ich erhalte aus dem Modul DBLog nur Ereignisse bei disconnected. Ein späteres connected generiert kein Ereignis im Ereignismonitor.
Da ich mittels Modul Monitoring diverse Geräte und/oder Dienste überwache, wird DBLog bei disconnected zwar dem Monitoring-Device hinzugefügt, bei erneutem connected aber nicht entfernt.
Jemand eine Idee?
Hallo pte,
das ist so designed. Hintergrund ist, dass bei jeden Event/Schreibzyklus der connect-Status geprüft und gesetzt wird. Würde jedesmal ein Event generiert wenn der Zustand normal, d.h. "connected" ist, dann würden die Systeme in Events ersticken (zumindest im synchronen Modus). Deswegen wird nur ein Event generiert wenn ein außergewöhnlicher Zustand auftritt.
Allerdings wäre es im asynchronen Modus durchaus möglich auch bei "connected" einen Event erzeugen zu lassen da in diesem Fall das Intervall der Eventgenerierung abhängig ist vom eingestellten Syncintervall (default 30 s) und der User die Eventgenerierung mit "event-on-change/update-reading" beeinflussen kann.
Betreibst du DbLog im asynchronen Modus ?
Grüße
Heiko
ja
Gesendet von iPhone mit Tapatalk
Hallo Heiko,
Und wenn Du nur einen Event generierst wenn sich der Zustand geändert hat?
Grüße
Jo, das geht auch. Irgendwie hatte ich das schon mal auf dem Schirm und dann wieder vergessen. ;)
So hier ist die neue Version 2.22.14 angehängt. Ich habe schon ein bisschen getestet und funktioniert sowohl im synchronen als auch asynchronen Modus.
Probierts mal bei euch aus und gebt bitte Feedback
Wenn es auch bei euch wie gewünscht checke ich es ein ... wird aber etwas dauern, bin mitten in Urlaubsvorbereitungen. :D
LG
Heiko
scheint noch nicht zu wirken :(
state wird zwar regelmäßig aktualisiert (aber nicht per longpoll), ein event im Ereignismonitor kann ich nicht finden.
Der Event wird NUR bei einer Änderung des state-Inhaltes erzeugt. Also z.B. bei einem Fehler.
Du kannst es provozieren wenn du zb. ein "set reopen 10" absetzt, oder mal disable setzt und wieder löscht.
Klappt bei mir einwandfrei.
ich hatte meine datenbank angehalten (fehlermeldung kommt im monitor). anschließend sql gestartet. state nach reload seite wieder connected aber nichts im monitor
Gesendet von iPhone mit Tapatalk
Sag mal, hast du nach dem Download des Moduls es auch umbenannt nach 93_DbLog.pm und ein "reload 93_DbLog" gemacht oder ein fhem restart ?
umbenannt und restart
Gesendet von iPhone mit Tapatalk
aktuelle version wird in internals auch angezeigt
Gesendet von iPhone mit Tapatalk
Hab noch etwas übersehen und die Version verbessert in #5 nochmal hochgeladen.
Bitte wieder testen.
scheint erst einmal zu arbeiten :). Besten Dank.
Kleiner Schönheitsfehler (oder Feature ::)), bei disconnect steht im state eine recht ausführliche Fehlermeldung
DBI connect('database=fhem;host=192.168.179.2;port=3307','fhem',...) failed: Can't connect to MySQL server on '192.168.179.2' (111) at ./FHEM/93_DbLog.pm line 1710
Ein einfacheres disconnected wäre meiner Ansicht besser und die Fehlermeldung in ein extra Reading wie z.B. lastConnectResult
Na das sieht doch gut aus. Den Check-In mache ich aber erst nach meinem Urlaub.
ZitatEin einfacheres disconnected wäre meiner Ansicht besser und die Fehlermeldung in ein extra Reading wie z.B. lastConnectResult
Modulweit werden eventuelle Fehlermitteilungen an state durchgereicht und abgebildet. Es gibt ja weit mehr Möglichkeiten als die von dir beschriebene disconnect-Meldung.
Prinzipiell möchte ich so wenig (Zwangs)-Readings wie möglich im DbLog erzeugen. Es ist ein Logging-Device und soll so performant wie möglich laufen.
Ich weiß, es geht um ms ;).
Aber dennoch würde ich eine solche Änderung, die dann natürlich im gesamten Modul umzusetzen wäre, nur machen wenn es einen triftigen Grund dafür gäbe. Den sehe ich allerdings momentan nicht.
Vielleicht gibt es ja dazu noch weitere Meinungen....
Jetzt mach eich aber erstmal Pause ... :)
LG
Heiko
ist jetzt ja auch nicht kritisch.
Erst mal gute Erholung und nochmals vielen Dank. 8)
Hallo pte, @all,
habe die V2.2.14 mit den in diesem Thread beschriebenen Änderungen soeben eingcheckt und ist morgen früh im Update.
LG,
Heiko
danke, werde es mal testen. Die bisherigen Änderungen arbeiten zufriedenstellend.
Gesendet von iPhone mit Tapatalk
Habe es jetzt ca. 1 Woche in Benutzung. Scheint alles zu laufen. Danke noch mal.