Ich dachte, dass dies eine einfache Übung sei: Einige per LAN angebundene Geräte prüfe ich mittels beispielsweise
defmod Ping_ABC ping 192.168.178.71 tcp 5
attr Ping_ABC checkInterval 300
attr Ping_ABC devStateIcon ok:WLAN_Status.1 unreachable:WLAN_Status.0
attr Ping_ABC event-on-change-reading state
attr Ping_ABC group Kontrolle
attr Ping_ABC icon it_router
attr Ping_ABC minFailCount 2
attr Ping_ABC room Security
Das funktioniert, auch Aktionen werden ggf. ausgelöst. Nun will ich gerne in einem FileLog nachverfolgen, was denn mit der Verbindung ist.
defmod FileLog_ping FileLog /opt/fhem/log/FileLog_ping-%Y.log Ping_ABC:.*
attr FileLog_ping logtype text
Aber ins Filelog wir nichts geschrieben. Außer, wenn ich das ping per trigger auslöse oder wenn etwas nicht funktioniert, siehe Beispiel:
2019-01-23_18:54:08 FileLog_ping addRegexpPart ABC .*
2019-01-23_23:12:27 Ping_ABC
2019-01-24_02:07:48 Ping_ABC unreachable
2019-01-24_08:06:39 Ping_ABC ok
Erklärung:
2019-01-23_23:12:27 war der Test mit trigger -> funktioniert
2019-01-24_02:07:08 hat sich die beobachtete Device vom Netz verabschiedet
2019-01-24_08:06:39 wurde das Gerät neu gestartet und damit die Verbindung wieder hergestellt.
Aber eigentlich hatte ich erwartet, dass alle 5 Minuten ein Eintrag kommt. Ich habe da den Verdacht, ich habe etwas übersehen. Hat jemand einen Tipp? Danke im Voraus.
Bei ,,event-on-change-reading state" kommt nur dann ein event, wenn wich das Reading ,,state" (kleingeschrieben) ändert....
Vielleicht ,,event-min-interval" auf 300 dazu?
Besten Dank, genau das wird es sein - und ist dann ja auch sinnvoll. Hätte ich auch selber drauf kommen können.....
Hatte das FileLog dummerweise von wo anders kopiert, um ja nichts falsch zu machen.