FHEM-Plugin für checkMK

Begonnen von erdo_king, 30 Dezember 2016, 17:35:26

Vorheriges Thema - Nächstes Thema

MarkusN

Zitat von: erdo_king am 22 Juni 2018, 13:00:08
Verrätst du uns noch die Datei die du angepasst hast ;)
ich benutze die Variable "text" nicht, und Zeile 91-92 in meinem check ergibt keinen Sinnn für mich ...

Edit:
ok habe es selbst herausgefunden:
"telegram notification script"  -> https://metzlog.srcbox.net/2016/01/monitoring-notifications-via-telegram/telegram

Genau darauf habe ich mich bezogen  ;D

Zitat von: erdo_king am 22 Juni 2018, 13:06:27
@MarkusN : Ich habe mal einen angepassten agent hochgeladen, welcher leere Readings ignorieren sollte.
Kannst du den bitte testen. Ich habe keine leeren Readings und wüsste auch nicht wie ich FHEM dazu bringe mir so eins anzulegen :D

Dein "memory"-Reading sollte damit rausfliegen.

Ich sehe das memory reading immer noch, auch im raw output vom agent. Vielleicht solltest Du da nicht zuviel rein investieren, scheint ja kein normales Verhalten zu sein.

erdo_king

Zitat von: MarkusN am 22 Juni 2018, 15:15:59
Ich sehe das memory reading immer noch, auch im raw output vom agent. Vielleicht solltest Du da nicht zuviel rein investieren, scheint ja kein normales Verhalten zu sein.

Bis jetzt stolze 5 Minuten :D
Okay *kopfauftischhau* doofheitsfehler...

Kannst du bitte folgendes anpassen und noch einmal laufen lassen:
if (( "$reading" !~ /RegL_\d+/) and ( "$reading" ne "" )) {
if (( "$reading" !~ /RegL_\d+/) or ( "$reading" ne "" )) {

das konnte ja nichts werden ...

erdo_king

Version 0.9.1 online.

[0.9.1] - 2018-06-25
Added
- wato config for HomeMatic reading 'activity' [thanks to MarkusN]
- support for Luxtronik 2.0 (incl. readings, wato and pnp4nagios) [thanks to mab]

mab

#33
Tut was es soll -  wenn du noch die restlichen Werte (Readings) nachziehen könntest, ist es Perfekt!

gestestet mit folgender Umgebung - OK

System
Raspbian GNU/Linux 9

Debian Packages
omd-2.60-labs-edition 0.debian9
fhem 5.8

omd: check_mk 1.2.8p20

Luxtronik 2.0: Type L2G404

erdo_king

Freut mich zu hören!
Du setzt eine ConSol Labs Edition ein oO gut zu wissen das mein Plugin damit auch funktioniert  ;D
Meine alte Firma hat auch erst diese Version eingesetzt und ist auf mein Anraten hin zu der offiziellen Version vom Kettner gewechselt...

Sie konnten die einfache Frage nicht beantworten: "Warum setzt ihr nicht die Hersteller-Version ein und welche Vorteile bringt es diese nicht einzusetzen."
Alles mal wieder eine gut  durchdachte Einführung  :P ::)




Bei den "restlichen Readings" tue ich mich was schwer ... hab einige mit Absicht ausgeklammert

Die folgenden werden offenbar durchgehend hochgezählt, somit hat man keinen überprüfbaren wert, und ein Graph steigt einfach nur an ...
Ich kann die zwar ausgegeben, hat dann aber nichts mit Monitoring zu tun!
counterHoursHeatPump -> 5463.5
counterHoursHeating -> 1453.7
counterHoursHotWater -> 4005.5

Mit diesen Werten kann ich nichts anfangen, was sind das für welche?
counterHours2ndHeatSource1 -> 11.2
counterHours2ndHeatSource2 -> 103.6

Bis auf deviceTimeCalc sollten das alle von dir vorgeschlagenen Readings sein oder irre ich mich.
Da überlege ich noch ob ich das überhaupt prüfen will. Ist wieder ein Sonderfall...




Hast du was dagegen wenn ich den Screenshot mit in meine Sammlung aufnehme? Erster Beitrag + Github...

mab

#35
Guten morgen, wie folgt die Antworten.

1) kann ich dir einfach beantworten, es gibt von mk kein fertiges Package für armv7l (u.a. für Raspberry)

2) bei den restlichen Readings kann ich gerne testen ob das dann soweit funktioniert.

3) der verwendete Speicher einer Festplatte steigt in der Regel auch einfach nur an, jedoch ist dieser Wert ebenfalls von Bedeutung. (Verlauf / Tendenz)
mit dem counterHours kann man somit auch sehr viel auslesen (u.a. die Performance)

4) opensource! nur zu – wenn mehr Daten da sind, kann ich gerne noch coolere machen =)

5) bitte die req. check_mk version (version.min_required) für dein mkp package von 1.4.0p0 auf 1.2.8p0 setzen (getestet) -> ist die aktuellste armv7l Version

erdo_king

1) kann ich dir einfach beantworten, es gibt von mk kein fertiges Package für armv7l (u.a. für Raspberry)
  -> stimmt da war ja mal was (mein CheckMK läuft in ner VM)

2) bei den restlichen Readings kann ich gerne testen ob das dann soweit funktioniert.
  -> super, danke

3) der verwendete Speicher einer Festplatte steigt in der Regel auch einfach nur an, jedoch ist dieser Wert ebenfalls von Bedeutung. (Verlauf / Tendenz)
mit dem counterHours kann man somit auch sehr viel auslesen (u.a. die Performance)
-> wenn der bei dir nur steigt läuft da einiges falsch :D Stichworte: Logrotate, apt clean, rm -rf /, ... Meine Belegungen gehen hoch und runter (aus der tiefsten Seele eines Linux-Admins)

4) opensource! nur zu – wenn mehr Daten da sind, kann ich gerne noch coolere machen =)
-> super danke!

5) bitte die req. check_mk version (version.min_required) für dein mkp package von 1.4.0p0 auf 1.2.8p0 setzen (getestet) -> ist die aktuellste armv7l Version
-> https://github.com/erdoking/mk_fhem/commit/77943ebe84f3f343379dab731e527f154bcc333a

erdo_king

v0.9.2  ist online.

@mab:
ich habe aufgenommen (mit Graphen):
- counterHoursHeatPump
- counterHoursHeating
- counterHoursHotWater

und ignoriert (da ich mit den Variablen-Namen nichts anfangen kann):
- counterHours2ndHeatSource1
- counterHours2ndHeatSource2


Weiterhin habe ich die version.min_required auf 1.2.8 geändert.
Ausserdem habe ich deinen Screenshot in die Sammlung getan (danke!)

mab

sehr fein!

counterHours => läuft; Perf.Data abwarten.. =)
mkp install fhem-0.9.2.mkp läuft jetzt auf der MK v 1.2.8 ohne Probleme.

Luxus wäre noch bei counterHours den Trend zu sehen (Analog zum Disk-Space)

Optional: ggf. die Standards Warn/Crit Werte noch etwas anpassen (z.b. Warmwasser Upper 70 statt 60, Außentemp. -20 bis 40, darunter funk. eh keine WP mehr)

MarkusN

v0.9.2 laeuft bei mir auch problemlos, Daumen hoch!

Das leere Memory Reading macht bei mir immer noch probleme, juckt mich aber nicht wirklich, da diese Devices ohnehin nicht von interesse fuer mich sind. Habe sie einfach disabled und gut ist.
Die overrides fuer activity funktionieren auch, danke!

erdo_king

Zitat von: MarkusN am 04 Juli 2018, 11:08:35
v0.9.2 laeuft bei mir auch problemlos, Daumen hoch!

Freut mich zu hören!


Zu deinem leerem Reading:
Ich sehe das als einen Fehler im OWCOUNT an, daher wird es keinen Support meinerseits für das leere Reading geben.

Nach den CheckMK-Best-Practices soll ich den Fehler nicht abfangen und gegen die Wand fahren lassen - das werde ich auch machen ;)
Siehe https://mathias-kettner.de/cms_dev_guidelines.html
Zitat5.1. Exceptions
Ihr Checkplugin darf nicht nur sondern soll sogar stets davon ausgehen, dass die Ausgabe des Agenten syntaktisch valide ist. Das Plugin darf auf keinen Fall versuchen, etwaige unbekannte Fehlersituation in der Ausgabe selbst zu behandeln!


Die Version 1.0 soll übrigens Konform zu den Richtlinien sein, so dass das Plugin im CheckMK-Plugin-Katalog aufgenommen werden kann ...
Da ist noch einiges an Arbeit zu investieren.

MarkusN

Ich hätte da noch eine Anfrage:
Alle HTs (Max!,HM) laufen bei mir im "Sommermodus", das bedeutet dass ich die desiredTemperature auf "on" oder "off" gesetzt habe (on fährt die Ventile auf 100%, off auf 0%).
Dabei ist mir aufgefallen, dass von dem Plugin bei Max! Thermostaten die desiredTemperature überhaupt nicht ausgewertet wird. (das reading heißt bei Max! "desiredTemperature", im Gegensatz zu "desired-temp" bei HM).
Bei den HM HTs, wo dieses Reading korrekt erfasst wird, führt eine desired-Temp von "on" oder "off" dazu dass alle Service Graphs für das entsprechende Device leer bleiben (selbst batteryLevel, welches sogar einen eigenen Graph hat). Vielleicht wird check_mk (bzw der png teil davon) aus dem Tritt gebracht wenn auf einmal statt einem numerischen Wert ein on oder off geliefert wird.

Kurzum:
1) Wuerdest du das reading "desiredTemperature" fuer Max! HTs mit auslesen?
2) Kann man ein "on" oder "off" so abfangen dass es in eine Null umgewandelt wird?

erdo_king

Hallo MarkusN,

der Sommermodus ist mir komplett entgangen (sollte/werde ich selbst einsetzen  ;) )


1) Wuerdest du das reading "desiredTemperature" fuer Max! HTs mit auslesen?
-> klar, da ich selbst keine MAX im Einsatz habe:
     -> kannst du mir bitte den entsprechenden Agent-Output der MAX-Geräte per PN schicken!?
     -> dann prüfe ich ob noch mehr Readings fehlen

2) Kann man ein "on" oder "off" so abfangen dass es in eine Null umgewandelt wird?
-> muss ich mir anschauen, das soll für pnp4nagios eine 0, bzw 100 und in der Statusmeldung on/off stehen... Wäre sonst recht verwirrend ...

erdo_king

Okay Denkfehler meinerseits.
Blöde Frage: Welche Temperatur hat "desiredTemperature on" ?
Bin von 100°C ausgegangen, das ist wohl quatsch ...

Was genau bedeutet "on" eigentlich?

erdo_king

Ich habe mal eine Übersichtsseite im Wiki (Github!) erstelle, wo unterstütze Readings aufgeführt werden.

https://github.com/erdoking/mk_fhem/wiki

WICHTIG!
Auch wenn die Readings einzelnen Herstellern zugeordnet sind funktionieren diese trotzdem global für alle Geräte!