Hallo,
ich würde gern für diverse Items Watchdog erstellen, also eine Prüfung, oder der Inputgeber noch "online" ist. Eine Anwendung bei mir wäre 1wire. Ich habe in meiner 1wire Installation einen Bus-check Sensor eingebaut. Dieser sendet regelmäßig seine ID: Solange er das tut, ist der 1wire Bus online. Dieses ID kommt auf ein Item.
Der Watchdog soll nun anschlagen, das Item ein gewisses Alter hat bzw. es eine gewisse Zeit nicht mehr aktualisiert wurde.
Wie kann man ressourcenschonend eine Watchdog machen?
Folgendes fällt mir ein:
1) Eigenes Watchdog Item in der alle 60s das Alter des entsprechenden Items geprüft wir. Ist die Schwelle überschritten, wird das Item 1.
2) Eigenes Watchdog Item, bei dem bei jedem Update des zu beobachtenden Items der Autotimer neu gestartet wird. Ist der Timer abgelaufen, wird das Item 1.
Welche Möglichkeiten gäbe es noch?
Was habt ihr im Einsatz?
Danke für die Rückmeldung.
ich würde gern für diverse Items Watchdog erstellen, also eine Prüfung, oder der Inputgeber noch "online" ist. Eine Anwendung bei mir wäre 1wire. Ich habe in meiner 1wire Installation einen Bus-check Sensor eingebaut. Dieser sendet regelmäßig seine ID: Solange er das tut, ist der 1wire Bus online. Dieses ID kommt auf ein Item.
Der Watchdog soll nun anschlagen, das Item ein gewisses Alter hat bzw. es eine gewisse Zeit nicht mehr aktualisiert wurde.
Code:
onewire: buscheck_1: type: bool ow_addr: 01.C0C811190000 ow_sensor: B
Folgendes fällt mir ein:
1) Eigenes Watchdog Item in der alle 60s das Alter des entsprechenden Items geprüft wir. Ist die Schwelle überschritten, wird das Item 1.
Code:
Watchdog: type: bool eval: 1 if (sh.onewire.buscheck_1.age() < 600) else 0 cycle: 60 enforce_updates: 'true'
Welche Möglichkeiten gäbe es noch?
Was habt ihr im Einsatz?
Danke für die Rückmeldung.
Kommentar