Check MK für die CCU
Moderator: Co-Administratoren
- deimos
- Beiträge: 5403
- Registriert: 20.06.2017, 10:38
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Leimersheim
- Hat sich bedankt: 121 Mal
- Danksagung erhalten: 958 Mal
- Kontaktdaten:
Check MK für die CCU
Hallo,
der ein oder andere hat es vielleicht schon gelesen: Ich habe ein Addon für die CCU2 bzw. für Raspberrymatic geschrieben, welches einen Check_MK Agent bereitstellt.
Ich habe versucht, so viele Sections wie möglich vom originalen Check_MK Agent zu übernehmen, aber leider limitiert BusyBox da doch sehr. Insgesamt ist es aber schon deutlich mehr als nur CPU und RAM.
Zusätlich werden noch alle Service Meldungen und alle Datenpunkte von Kanälen gesendet, welche sich im Gewerk Monitored befinden. Dadurch sind weitere Plugins in Check_MK möglich, im Moment habe ich hier bereits einige fertig:
- Überwachung des Dutycycles (CCU und alle angeschlossenen LAN GWs)
- Überwachung auf Low Battery (alle Geräte)
- Überwachung auf Unreachable Devices (alle Geräte)
- Überwachung auf alle anderen Service Messages
- Überwachung Luftfeuchtigkeit mit anpassbaren Limits (Geräte in Gewerk Monitored, welche entsprechende Daten bereitstellen)
Zu finden ist das Addon für die CCU und das Plugin für Check_MK auf Github:
https://github.com/alexreinert/homematic_check_mk
Dort sind auch fertig gepackte Installationspakete, so das man die Dateien nicht manuell installieren muss.
Gerne kann ich auch weitere Plugins entwickeln/aufnehmen, für meine Zwecke reicht mir die o.g. aber erstmal. Gibt also nicht mehr, außer jemand meldet sich.
Konstruktives Feedback ist erwünscht, gerade mein TCL ist jetzt nicht unbedingt das Beste.
Viele Grüße
Alex
der ein oder andere hat es vielleicht schon gelesen: Ich habe ein Addon für die CCU2 bzw. für Raspberrymatic geschrieben, welches einen Check_MK Agent bereitstellt.
Ich habe versucht, so viele Sections wie möglich vom originalen Check_MK Agent zu übernehmen, aber leider limitiert BusyBox da doch sehr. Insgesamt ist es aber schon deutlich mehr als nur CPU und RAM.
Zusätlich werden noch alle Service Meldungen und alle Datenpunkte von Kanälen gesendet, welche sich im Gewerk Monitored befinden. Dadurch sind weitere Plugins in Check_MK möglich, im Moment habe ich hier bereits einige fertig:
- Überwachung des Dutycycles (CCU und alle angeschlossenen LAN GWs)
- Überwachung auf Low Battery (alle Geräte)
- Überwachung auf Unreachable Devices (alle Geräte)
- Überwachung auf alle anderen Service Messages
- Überwachung Luftfeuchtigkeit mit anpassbaren Limits (Geräte in Gewerk Monitored, welche entsprechende Daten bereitstellen)
Zu finden ist das Addon für die CCU und das Plugin für Check_MK auf Github:
https://github.com/alexreinert/homematic_check_mk
Dort sind auch fertig gepackte Installationspakete, so das man die Dateien nicht manuell installieren muss.
Gerne kann ich auch weitere Plugins entwickeln/aufnehmen, für meine Zwecke reicht mir die o.g. aber erstmal. Gibt also nicht mehr, außer jemand meldet sich.
Konstruktives Feedback ist erwünscht, gerade mein TCL ist jetzt nicht unbedingt das Beste.
Viele Grüße
Alex
Re: Check MK für die CCU
Hallo Alex,
Erst einmal Danke für die Arbeit.
Kann es sein, dass es Check-MK nur für 64-Bit Systeme unter Linux gibt?
Ich habe für ioBroker einen kleinen Rechner mit Debian Jessy in 32-Bit laufen. Dort würde ich, wenn das machbar ist gern Check-mk mit laufen lassen.
Gruß
Silvio
Gesendet von iPhone mit Tapatalk Pro
Erst einmal Danke für die Arbeit.
Kann es sein, dass es Check-MK nur für 64-Bit Systeme unter Linux gibt?
Ich habe für ioBroker einen kleinen Rechner mit Debian Jessy in 32-Bit laufen. Dort würde ich, wenn das machbar ist gern Check-mk mit laufen lassen.
Gruß
Silvio
Gesendet von iPhone mit Tapatalk Pro
--------------------------------------------
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
770 Kanäle und 3439 Datenpunkte in 223 Geräten:
- deimos
- Beiträge: 5403
- Registriert: 20.06.2017, 10:38
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Leimersheim
- Hat sich bedankt: 121 Mal
- Danksagung erhalten: 958 Mal
- Kontaktdaten:
Re: Check MK für die CCU
So wie es scheint, gibt es den Server offiziell nur noch für x64. Bis Version 1.2.8 gab es den zumindest noch als x86, ist halt die Frage, ob man mit einer alten Version starten will. Alternativ ist es vielleicht möglich, selber zu kompilieren, keine Ahnung, ob da irgendwelche Einschränkungen sind.
-
- Beiträge: 1173
- Registriert: 14.02.2016, 12:32
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Heidenheim
- Hat sich bedankt: 57 Mal
- Danksagung erhalten: 227 Mal
Re: Check MK für die CCU
Genial, sowas such ich schon lange.
Hab auch gleich einen Fehler gefunden, den du spätestens in der nächsten Firmware-Version auch haben wirst:
Ich setze die Beta der ReGaHss ein, jetzt wird regelmäßig ein "Script Runtime Error" im CCU-Log geworfen (immer dann, wenn CheckMK den agent abfragt).
D.h. irgendwo in dem AddOn ist in Script- oder Syntaxfehler...
edit: Hab mal selbst etwas nach dem Fehler gesucht:
Wenn keine Servicemeldung anliegt, wir der Fehler ausgegeben. Du musst vor "if (_svc.AlState() == asOncoming) {" noch prüfen, ob _svc überhaupt gefüllt ist.
Außerdem gibt es bei mir bisher kein Gewerk "Monitored" (brauche keine Überwachung einzelner Sensoren in Check_MK), daher wäre auch hier noch eine Prüfung sinnvoll, ob es das überhaupt gibt.
Auszug aus meiner korrigierten server.tcl:
Hab auch gleich einen Fehler gefunden, den du spätestens in der nächsten Firmware-Version auch haben wirst:
Ich setze die Beta der ReGaHss ein, jetzt wird regelmäßig ein "Script Runtime Error" im CCU-Log geworfen (immer dann, wenn CheckMK den agent abfragt).
D.h. irgendwo in dem AddOn ist in Script- oder Syntaxfehler...
Code: Alles auswählen
Jul 3 16:49:16 192.168.0.220 logger: check_mk_agent - connection accepted from 192.168.0.4:60220
Jul 3 16:49:16 192.168.0.220 ReGaHss: Error: IseESP::ScriptRuntimeError:
string _svcId;
object _svc;
string _devId;
object _dev;
string _chId;
object _ch;
string _dpId;
object _dp;
string _name;
foreach (_svcId, dom.GetOb
Wenn keine Servicemeldung anliegt, wir der Fehler ausgegeben. Du musst vor "if (_svc.AlState() == asOncoming) {" noch prüfen, ob _svc überhaupt gefüllt ist.
Außerdem gibt es bei mir bisher kein Gewerk "Monitored" (brauche keine Überwachung einzelner Sensoren in Check_MK), daher wäre auch hier noch eine Prüfung sinnvoll, ob es das überhaupt gibt.
Auszug aus meiner korrigierten server.tcl:
Code: Alles auswählen
array set result [rega_script {
!check_mk_agent script for service messages etc.
string _svcId;
object _svc;
string _devId;
object _dev;
string _chId;
object _ch;
string _dpId;
object _dp;
string _name;
object _lot;
foreach (_svcId, dom.GetObject(ID_SERVICES).EnumUsedIDs()) {
_svc = dom.GetObject(_svcId);
if (_svc) {
if (_svc.AlState() == asOncoming) {
_dp = dom.GetObject(_svc.AlTriggerDP());
_ch = dom.GetObject(_dp.Channel());
_dev = dom.GetObject(_ch.Device());
WriteLine("SVC_MSG;" # _dev.Name() # ";" # _svc.Name().StrValueByIndex (".", 1).StrValueByIndex ("-", 0) # ";" # _dp.Timestamp());
}
}
}
_lot = dom.GetObject("Monitored");
if (_lot) {
foreach (_chId, _lot.EnumUsedIDs()) {
_ch = dom.GetObject(_chId);
_dev = dom.GetObject(_ch.Device());
WriteLine(_ch.Name() # ";HSSTYPE;" # _dev.HssType());
foreach (_dpId, _ch.DPs()) {
_dp = dom.GetObject(_dpId);
if (_dp.Value()) {
_name = _dp.Name().StrValueByIndex(".", 2);
WriteLine(_ch.Name() # ";" # _name # ";" # _dp.Value() # ";" # _dp.Timestamp());
}
}
}
}
}
- deimos
- Beiträge: 5403
- Registriert: 20.06.2017, 10:38
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Leimersheim
- Hat sich bedankt: 121 Mal
- Danksagung erhalten: 958 Mal
- Kontaktdaten:
Re: Check MK für die CCU
Danke für die Hinweise. Ich werde das entsprechend anpassen, aber ich werde vermutlich erst am Wochenende dazu kommen.
Viele Grüße
Alex
Viele Grüße
Alex
- deimos
- Beiträge: 5403
- Registriert: 20.06.2017, 10:38
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Leimersheim
- Hat sich bedankt: 121 Mal
- Danksagung erhalten: 958 Mal
- Kontaktdaten:
Re: Check MK für die CCU
Hi,
ich habe grade die Version 1.1 erstellt (https://github.com/alexreinert/homemati ... es/tag/1.1)
Neben den o.g. Anpassungen gibt es jetzt auch die Möglichkeit eigene Agent Plugins ausführen zu lassen. Dazu einfach entsprechende Shell Scripte in den Ordner /usr/local/addons/check_mk_agent/plugins speichern.
Viele Grüße
Alex
ich habe grade die Version 1.1 erstellt (https://github.com/alexreinert/homemati ... es/tag/1.1)
Neben den o.g. Anpassungen gibt es jetzt auch die Möglichkeit eigene Agent Plugins ausführen zu lassen. Dazu einfach entsprechende Shell Scripte in den Ordner /usr/local/addons/check_mk_agent/plugins speichern.
Viele Grüße
Alex
Re: Check MK für die CCU
Hi,
gibt es irgendwas bei der Installation zu beachten?
Mit aktueller FW 2.29.18 auf CCU2 passiert bei mir nach upload des Addons außer Neustart - nichts. Kein Addon anschließend vorhanden und mit find nichts auf der CCU.
Christian
gibt es irgendwas bei der Installation zu beachten?
Mit aktueller FW 2.29.18 auf CCU2 passiert bei mir nach upload des Addons außer Neustart - nichts. Kein Addon anschließend vorhanden und mit find nichts auf der CCU.
Christian
- deimos
- Beiträge: 5403
- Registriert: 20.06.2017, 10:38
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Leimersheim
- Hat sich bedankt: 121 Mal
- Danksagung erhalten: 958 Mal
- Kontaktdaten:
Re: Check MK für die CCU
Irgendwas beim Erstellen des tgz ist schief gegangen, da fehlten die Execute-Attribute.
Ich habe das Addon grade nochmal neu gepackt und hochgeladen. Bitte damit nochmal probieren.
Alternativ über SSH die Execute-Attibute mit chmod selber setzen.
Alex
Ich habe das Addon grade nochmal neu gepackt und hochgeladen. Bitte damit nochmal probieren.
Alternativ über SSH die Execute-Attibute mit chmod selber setzen.
Alex
Re: Check MK für die CCU
Hi,
Christian
jetzt klappt's. Hey, da kommen richtig Informationen rüber. Sehr cool. Hoffentlich killt es auf Dauer nicht die CCU2.deimos hat geschrieben:...
Ich habe das Addon grade nochmal neu gepackt und hochgeladen. Bitte damit nochmal probieren.
...
Christian
Re: Check MK für die CCU
Hmmm - mit FW 2.29.23 klappt das nicht
Trotz setzen der exec-Attribute für das tgz nach dem Hochladen.
Folgendes hat geklappt:
Trotz setzen der exec-Attribute für das tgz nach dem Hochladen.
Folgendes hat geklappt:
- Hochladen des check tgz per scp nach /var/tmp auf der CCU
- Auspacken des tgz mit tar -xzvf ...
- Manuelles installieren durch start von ./update_script
- aufräumen von /var/tmp