kein Ereignis bei DBLog->connected

Begonnen von pte, 01 November 2017, 14:55:04

Vorheriges Thema - Nächstes Thema

pte

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?
Lichtenstein/Sa. grüßt den Rest der Welt

DS_Starter

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
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

pte

Lichtenstein/Sa. grüßt den Rest der Welt

CoolTux

Hallo Heiko,

Und wenn Du nur einen Event generierst wenn sich der Zustand geändert hat?



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

DS_Starter

Jo, das geht auch. Irgendwie hatte ich das schon mal auf dem Schirm und dann wieder vergessen.  ;)
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#5
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
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

pte

scheint noch nicht zu wirken :(
state wird zwar regelmäßig aktualisiert (aber nicht per longpoll), ein event im Ereignismonitor kann ich nicht finden.
Lichtenstein/Sa. grüßt den Rest der Welt

DS_Starter

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.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

pte

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
Lichtenstein/Sa. grüßt den Rest der Welt

DS_Starter

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 ?
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

pte

 umbenannt und restart


Gesendet von iPhone mit Tapatalk
Lichtenstein/Sa. grüßt den Rest der Welt

pte

aktuelle version wird in internals auch angezeigt


Gesendet von iPhone mit Tapatalk
Lichtenstein/Sa. grüßt den Rest der Welt

DS_Starter

Hab noch etwas übersehen und die Version verbessert in #5  nochmal hochgeladen.
Bitte wieder testen.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

pte

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
Lichtenstein/Sa. grüßt den Rest der Welt

DS_Starter

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
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter