PRTG Network Monitor ist eine Monitoring-Software der Firma Paessler zur Überwachung des gesamten Netzwerkes. Dieser Artikel erklärt Ihnen die Integrationsmöglichkeiten der Kentix-Geräte in PRTG.
Folgende Möglichkeiten zur Integration stehen Ihnen zur Verfügung
- SMS-Gateway Funktion
- SNMP-Integration
- REST-API-Integration
SMS-Gateway Funktion
Der Kentix AlarmManager bietet Ihnen bei aktivierter GSM-Funktion die Möglichkeit ein SMS-Gateway bereitzustellen, dass von PRTG genutzt werden kann. Die Funktion wird unter dem Menüpunkt Konfiguration –> GSM –> SMS-Gateway aktiviert. Für das Gateway vergeben Sie hier ein Passwort.
Nachdem das SMS-Gateway im AlarmManager aktiviert wurde, kann es in PRTG konfiguriert werden. Hierzu navigieren Sie zu Konfiguration –> Systemverwaltung –> Versand von Benachrichtigungen. Unter dem Punkt Versand per SMS konfigurieren Sie eine benutzerdefinierte URL.
https://192.168.100.222/php/sms_gateway.php?key=password&recipients=%SMSNUMBER&message=%SMSTEXT
SNMP-Integration
Das Simple Network Management Protokoll ist ein Netzwerkprotokoll zur Überwachung von verschiedensten Komponenten. Das Protokoll existiert in den Versionen 1 bis 3. Der Fokus bei der Version 3 liegt vor allem in der Verwendung von Sicherheitsmechanismen zur Authentifizierung zwischen Agent und Manager. Das SNMP-Protokoll verwendet im Standard den UDP-Port 161 zur Abfrage von Agenten und den UDP-Port 162 zum Empfang von Traps.
Kentix-Geräte unterstützen die SNMP-Protokolle v2 und v3 und bieten daher die Möglichkeit SNMP-Abfragen mit erhöhtem Sicherheitsbedarf zu realisieren. Die Nutzung von SNMP kann im Main-Gerät unter dem Menüpunkt Konfiguration –> Kommunikation –> SNMP aktiviert werden. Es steht Ihnen dann direkt das OID-Glossar zum Download bereit. Diese CSV-Liste enthält eine dynamisch generierte Liste aller Werte, die Ihr Kentix-Gerät bereitstellt. Weiterhin können Sie die Kentix-MIB-Datei direkt im Shop herunterladen, und damit Abfragen direkt gegen Ihr Main-Gerät durchführen.
Nach der SNMP-Aktivierung können Sie verschiedene SNMP-Typen erstellen. Zur Integration in PRTG benötigen Sie in jedem Fall den Typ Daten bereitstellen. Damit ist Ihr Kentix-System unter den konfigurierten Einstellungen für den PRTG-Server erreichbar und Sie können dort Werte abfragen.
Die einzelnen Datenpunkte Ihres Kentix-Systems können Sie entweder dem OID-Glossar entnehmen oder direkt bei den einzelnen Geräten abrufen.
Um den gewünschten Datenpunkt in PRTG darzustellen, legen Sie im ersten Schritt ein Gerät an. Die IP-Adresse ist hier immer das Main-Gerät. Im zweiten Schritt legen Sie einen Sensor vom Typ SNMP (Benutzerdefiniert) an. In der folgenden Eingabemaske ergänzen Sie die benötigten Daten, im wesentlichen die OID, die abgefragt werden soll.
Damit wird Ihnen der gewünschte Datenpunkt aus dem Kentix-System in PRTG dargestellt.
API-Integration
Kentix-Geräte bieten als weitere Schnittstelle zur Integration eine REST-API. PRTG bietet Ihnen hier die Möglichkeit API-Sensoren anzulegen, um damit Werte über die Kentix-API abzufragen. Aktuell stellt PRTG den REST v2 Sensor bereit, da dieser sich noch in der BETA-Phase befindet, muss die Verwendung separat aktiviert werden
Als Authentifizierungsmethode an der API verwendet Kentix benutzerbezogene Bearer-Token. Das jeweilige Token kann direkt in den Benutzereinstellungen eingesehen werden.
Zum ermitteln der gewünschten Werte empfehlen wir Ihnen die Software Postman, diese gibt Ihnen die Möglichkeit eine API mit verschiedenen HTTP-Methoden und der gewünschten Authentifizierung anzusprechen. Die Haupt-Route, die Ihnen die Messwerte aller Kentix-Geräte bereitstellt lautet.
GET https://192.168.100.222/api/systemvalues
Um die Detailwerte eines einzelnen Sensors zu ermitteln, benötigen Sie dessen ID. Diese finden Sie z.B. in der Antwort der oben genannten API-Route. Alternativ ist es auch möglich, das Gerät im Webinterface zu bearbeiten. Die ID wird dann als Teil der Browser-URL dargestellt. Bei einer PDU sieht dies dann so aus.
https://192.168.100.222/powermanagers/136
Mit der gewünschten ID können Sie die API-Route erweitern, so dass nur die Detailwerte des Gerätes angegeben werden
GET https://10.15.100.2/api/systemvalues/devices/136
Als Antwort bekommen Sie die Daten im JSON-Format
...
"address": "10.15.36.231",
"mac_address": "70:82:0e:10:d0:24",
"is_satellite": true,
"fuses": [
{
"id": 19,
"number": 1,
"name": "Fuse 1",
"type": 74,
"channel": "1",
"logic": 0,
"value": true,
"assignment": "always-active",
"status": "ok"
},
{
"id": 20,
"number": 2,
"name": "Fuse 2",
"type": 74,
"channel": "2",
"logic": 0,
"value": true,
"assignment": "always-active",
"status": "ok"
},
{
"id": 21,
"number": 3,
"name": "Fuse 3",
"type": 74,
"channel": "3",
"logic": 0,
"value": true,
"assignment": "always-active",
"status": "ok"
}
],
"active_state": "active",
"measurements": {
"humidity": {
"min": "10",
"max": "80",
"assignment": "always-active",
"value": "26.8",
"status": "ok"
},
"vibration": {
"assignment": "off",
"value": null,
"status": "inactive"
},
"rcm_ac": {
"max": "30",
"assignment": "always-active",
"value": "4.20",
"status": "ok"
},
"rcm_dc": {
"max": "30",
"assignment": "always-active",
"value": "0.00",
"status": "ok"
},
"temperature": {
"min": "10",
"max": "35",
"value": "33.2",
"assignment": "always-active",
"status": "ok"
},
"dewpoint": {
"hysteresis": "2",
"value": "11.6",
"assignment": "always-active",
"status": "ok"
},
"heat": {
"max": "10",
"value": "0.0",
"assignment": "always-active",
"status": "ok"
},
"co": {
"value": null,
"assignment": "off",
"status": "inactive"
},
"connection": {
"status": "ok",
"assignment": "system",
"last_updated": "2023-05-15T08:23:57+0200"
}
},
"phases": [
{
"id": 58,
"device_id": 136,
"number": 1,
"name": "L1",
"consumption": {
"value": "0.00",
"assignment": "always-active"
},
"active_power": {
"max": "2300",
"value": "0",
"assignment": "always-active",
"status": "ok"
},
...
Aus dieser Antwort können Sie nun die gewünschten Daten mithilfe der Query-Language JSONPath extrahieren. Hierzu gibt es einige Online-Editoren, z.B. https://jsonpath.com/ Als Input kopieren Sie die Antwort Ihrer Abfrage hinein und können dann im oberen Bereich zum gewünschten Datenpunkt navigieren.
Im Beispiel die Wirkleistung der Phase 2 einer PDU.
$.devices[0].phases[1].active_power.value
Mit diesen Informationen erstellen Sie jetzt in PRTG einen REST v2-Sensor für Ihr Kentix-Main-Gerät. In den Gruppeneinstellungen konfigurieren Sie bei den Zugangsdaten direkt das Bearer-Token zur API-Authentifizierung am Kentix-Gerät.
Im Sensor selbst konfigurieren Sie dann die Abfrage-URL und haben im Anschluss die Möglichkeit bis zu 10 Kanäle anzulegen. Im Beispiel werden die Werte einer PDU abgefragt und im ersten Kanal die Wirkleistung der 3 Phasen zusammengerechnet und dargestellt. Weiterhin wird der RCM-Wert, sowie der Sicherungsstatus der Phase 1 angezeigt. Der fertige Sensor sieht dann folgendermaßen aus.
Die Sensorkonfiguration wird beim Anlegen vorgenommen.
Typische Abfragewerte für die API-Route /api/systemvalues/devices/<device-id>
gesamte Wirkleistung einer 3-phasigen PDU
eval(to_number($.devices[0].phases[0].active_power.value) + to_number($.devices[0].phases[1].active_power.value) + to_number($.devices[0].phases[2].active_power.value))
RCM-Wert
$.devices[0].measurements.rcm_ac.value
Sicherungsstatus
$.devices[0].fuses[0].status
Temperaturwert
$.devices[0].measurements.temperature.value
CO-Alarm
$.devices[0].measurements.co.status