. Logs im Browser mit frontail – Smarthome

Logs im Browser mit frontail

Manchmal ist es praktisch, wenn man sich die Logs einfach kurz im Browser ansehen kann. Damit könnte man Sie dann z.b. auch in einer Visualisierung einbauen. Dies ist dank frontail auch relativ einfach umzusetzen. Zuerst muss nodejs und npm installiert werden. Danach kann dann frontail installiert werden

sudo apt-get install nodejs 
sudo apt-get install npm

npm i frontail -g

Anschließend erstellen wir einen Service

cd /lib/systemd/system/
sudo nano frontail.service

Hier das Script

#!/bin/sh -

[Unit]
Description=Frontail

[Service]
ExecStart=/usr/local/bin/frontail --ui-highlight -t dark /var/log/openhab2/openhab.log /var/log/openhab2/events.log
Restart=always
User=pi
Group=pi
Environment=PATH=/usr/bin/
Environment=NODE_ENV=production
WorkingDirectory=/usr/bin/

[Install]
WantedBy=multi-user.target
Alias=frontail.service

Nun machen wir das Script ausführbar und lassen systemctl die Konfiguration neu lesen. Anschließend setzen wir den Service auf enable damit er beim booten gestartet wird und starten ihn manuell

sudo chmod 644 /lib/systemd/system/frontail.service
sudo systemctl daemon-reload
sudo systemctl enable frontail.service
sudo systemctl start frontail.service

Frontail ist nun unter http://ip_des_rapsi:9001 erreichbar

Unter /usr/local/lib/node_modules/frontail/preset/ können wir noch das Design der Ausgabe beeinflussen. Dazu die Datei default.json entsprechend ändern.

{
  "words": {
    "[ERROR]": "color: red;",
    "[WARN ]": "color: orange;",
    "[INFO ]": "color: green;",
    "Node is DEAD": "color: red;",
    "GroupItemStateChangedEvent": "color: #0026FF; font-weight: bold;",
    "ItemStateChangedEvent": "color: #3F55D1;",
    "ItemCommandEvent]": "color: #00137F;",
    "hingStatusInfoChangedEvent": "color: #007F46;",
    "ON": "color: green; font-weight: bold;",
    "OFF": "color: red; font-weight: bold;",
    "received command": "color: yellow;"
  },
  "lines": {
    "": "font-size: 1.2em; color: #FBFBFB",
    "/var/log/openhab2/openhab.log": "text-align: right; font-size: 1.5em; font-weight: bold; color: #FBFBFB; border-top: 2px solid #F8F8F8;",
    "/var/log/openhab2/events.log": "text-align: right; font-size: 1.5em; font-weight: bold; color: #FBFBFB; border-top: 2px solid #F8F8F8;",
    "ERROR": "font-size: 1.2em; color: #FBFBFB; background-color: #990808;",
    "model.script": "font-size: 1.2em; color: #FBFBFB; background-color: #1B0CA6; font-weight: bold;"
  }
}