Artikel & Guides

Phantombot Überwachung in RPi-Monitor integrieren

letzte Änderung: 18. August 2021

In diesem Artikel zeige ich dir, wie du eine Phantombot Überwachung in die Übersicht des RPi-Monitors integrieren kannst.
Somit siehst du dort direkt den Systemstatus des Bots und kannst erkennen ob er läuft oder gestoppt ist.
Das ganze ist keine Hexerei und geht auch relativ schnell umzusetzen. Wie genau erfährst du auf dieser Seite.

Phantombot Überwachung in RPi Monitor

Was wir für die Phantombot Überwachung benötigen

Auf jeden Fall den RPi-Monitor.
Wie dieser installiert wird, kannst du hier nachlesen: https://darkwolfcave.de/raspberry-pi-rpi-monitor-echtzeituberwachung/
Und den Phantombot. Diese Installation erkläre ich hier: https://darkwolfcave.de/phantombot-auf-raspberry-pi/
Ansonsten noch Putty oder ähnliches – denn wir müssen an einer Datei etwas ändern.

Fangen wir an

Ich gehe hier von einer bereits erfolgten Installation des Phantombots und des RPi-Monitors auf dem Raspberry Pi aus. Wie diese zu erfolgen ist, kannst du unter den Links weiter oben nachlesen.
Heute beschränken wir uns auf den Bereich der Server. Dort werden wir den Status des Phantombots hinzufügen.

RPi-Monitor Phantombot Server

Dazu werden wir einige Änderungen in der Datei services.conf vornehmen.
Wir verbinden uns mit Putty auf unserem Raspberry Pi und wechseln in den entsprechenden Ordner: /etc/rpimonitor/template.
Hier öffnen wir die services.conf mit nano oder vi.

cd /etc/rpimonitor/template
sudo nano services.conf

Der Inhalt sollte bei einer unveränderten Datei in etwa so aussehen (zumindest am Anfang):

RPi Monitor Services

Du erkennst hier 5 „dynamic“ Abschnitte (1-5). Diese geben im Prinzip die Bereiche wieder, die wir im Monitor einbinden wollen.
Betrachte die einzelnen Blöcke und du wirst ein Muster erkennen.
name = Name um welchen Dienst/Service es sich handelt.
source = die Quelle aus dem wir den Status auslesen wollen. Bei den vorhandenen Beispielen wird hier mit „netstat -nlt“ geschaut ob der angegebene Port lauscht.
regexp = einfach ausgedrückt ein Suchstring der einen Wert zurückgibt (suche nach .*:80.*LISTEN zeigt Services/Dienste an die auf Port 80 lauschen.)

Wir benötigen für unsere Phantombot Überwachung einen neuen „Block“. Die Zahlen sind fortlaufend, in dem Beispiel wäre als nächstes die „6“ frei.
Also fügen wir unter dem „5er Block“ einen neuen hinzu:

dynamic.6.name=phantombot
dynamic.6.source=systemctl is-active phantombot

Das „phantombot“ musst du evtl. anders nennen. Hier kommt der Name hinein so wie du phantombot in dein System eingebunden hast.
In diesem Fall benötigen wir keinen regexp, da wir den Status des Dienstes direkt abfragen (is-active) und entweder ein „active“ oder ein „inactive“ zurück bekommen.
Die nächsten Zeilen sehen etwas verwirrend aus. Aber keine Sorge… du musst da nicht durchsteigen, sondern in der letzten Zeile einfach eine neue hinzufügen:

web.status.1.content.1.line.5="<b>phantombot</b> : "+Label(data.phantombot,"=='active'","OK","success")+Label(data.phantombot,"!='active'","KO","danger")

.line.5= = bezieht sich auf die Position, an welcher Stelle der Eintrag im Monitor angezeigt werden soll.
<b>phantombot</b> ist der Name der dann auf dem Monitor erscheint.
Der Rest prüft das Ergebnis der „is-active“ Abfrage und wandelt dies dann in OK oder KO um.
==’active‘ dann schreibe OK und färbe es grün(success)
!= (ungleich) ‚active‘ dann schreibe KO und färbe es rot(danger)

Jetzt alles speichern und den rpi-Monitor neu starten.

sudo systemctl restart rpimonitor

Wenn du jetzt auf die Web-GUI des rpi-Monitors gehst (IP deines Raspberry pi und :8888) bzw. die Seite aktualisiert, dann taucht dort der Status deines phantombots auf. Bei mir aktuell in rot, da er nicht läuft 😉 Somit hast du jetzt eine Phantombot Überwachung einsatzbereit!

rpimonitor phantombot

Schreibe einen Kommentar