In Teil 1 hatte ich ja bereits beschrieben wie ihr ein ein Gateway mittels Resin.io aufbauen könnt und ein einfaches Monitoring startet. Nachdem ich nun den Beitrag von Keptenkurk gelesen habe, musste ich mein Monitoring erweitern, bzw. erst mal testen ob es geht. Und ja, es geht. Diese Anleitung funktioniert mit Gateways, welche den Multi Protocol Packet Forwarder von Jac Kersing nutzen.
Dank Teil 1 überwacht ihr Auslastung von CPU und Speicher, Temperatur und die Anzahl der ein- und ausgehenden Pakete.
Hier nun, in Teil 2, erweitern wir dieses um RSSI, SNR, SF, Kanal und Größe der empfangenen Pakete. Damit haben wir unser Gateway dann voll im Blick. Das Einzige was fehlt, sind die Pakete, welche vom Gateway gesendet werden, diese werden damit nicht überwacht.
Funktionsweise
Das Prinzip ist schnell erklärt, ihr ergänzt die Einstellungen des Gateways um einen zweiten Network-Server, welches eure Node-RED Instanz ist. Das Gateway wird nun alle empfangenen Pakete auch an diesen Server leiten. Node-RED lauscht auf einem Port und verarbeitet die empfangenen Daten. Mehr ist es auch nicht.
Konfiguration des Gateways
Auf resin.io habe ich entsprechende Service Variablen erzeugt, damit mein Gateway die Pakete auch an meine Node-RED Instanz weiterleitet. Im folgenden Bild seht ihr meine Einstellung. Ihr müsst natürlich die IP Adresse und die Ports euren Gegebenheiten anpassen. SERVER_1_DOWNLINK und SERVER_1_PORTDOWN sollte nicht notwendig sein, ich habe sie aber einfach stehen gelassen.
Diejenigen, welche nicht resin.io nutzen, müssen entsprechend ihre local_conf.json anpassen.
Konfiguration des Monitoring in Node-RED
Node-RED lauscht auf dem entsprechenden UDP Port und extrahiert die Daten aus der Payload, welche anschließend in InfluxDB gespeichert werden. Den Flow habe ich auf GitHub geladen. Ihr müsst natürlich noch den InfluxDB Node entsprechend eurer Datenbank anpassen und den entsprechenden UDP Port eintragen.
Anschließend könnt ihr euere neuen Abfragen in Grafana anlegen und habt den vollen Überblick. Das Ganze ist schnell erledigt und funktioniert sehr gut.