FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: TomLee am 27 November 2020, 17:36:28

Titel: Nur letztes Reading des Tages loggen
Beitrag von: TomLee am 27 November 2020, 17:36:28
Hallo,

hat jemand bitte einen Stupps für mich wie ich es anstelle nur das letzte Reading (hier countsPerDay eines HourCounter-Device) des Tages zu loggen.

defmod hc_hc_Brennerzeiten HourCounter MQTT2_ebusd_bai:1_Pumpe:.on MQTT2_ebusd_bai:1_Pumpe:.off
attr hc_hc_Brennerzeiten event-on-change-reading .*
attr hc_hc_Brennerzeiten room Ebus

setstate hc_hc_Brennerzeiten 30
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 countsOverall 50
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 countsPerDay 30
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pauseTimeEdge 766
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pauseTimeIncrement 766
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pauseTimeOverall 62432
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pauseTimePerDay 41358
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pulseTimeEdge 360
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pulseTimeIncrement 0
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pulseTimeOverall 38433
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 pulseTimePerDay 21215
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 state 30
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 tickChanged 99
setstate hc_hc_Brennerzeiten 2020-11-27 00:00:00 tickDay 1
setstate hc_hc_Brennerzeiten 2020-11-27 17:00:00 tickHour 28
setstate hc_hc_Brennerzeiten 2020-11-26 13:21:47 tickMonth 0
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 tickUpdated 135
setstate hc_hc_Brennerzeiten 2020-11-26 13:21:47 tickWeek 0
setstate hc_hc_Brennerzeiten 2020-11-26 13:21:47 tickYear 0
setstate hc_hc_Brennerzeiten 2020-11-27 17:22:53 value 1


Gruß

Thomas
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: Beta-User am 27 November 2020, 17:39:40
Ungetestet: Oldreadings einrichten und userReadings auf die "1"?

OT: für diesen ganzen Kram verwende ich _ein_ statistics-Device und gut ist ;) . Ansonsten gibt es für plots auch noch delta-d...

(Anm. betr. den Vorschlag von Frank_Huber: das mit statistics sollte sowohl mit DBLog wie File Log klappen; es werden von dem statistics-Device einfach nur ein paar Readings bzw. Events "zeitgerecht" erzeugt, die dann geloggt werden können...)
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: Frank_Huber am 27 November 2020, 17:40:02
file oder DB?

bei DBlog kannst es per at und addlog Befehl machen.
bei FileLog kann ich es Dir leider nicht sagen. im Zweifel per at in einen Dummy schieben und nur diesen loggen.
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: betateilchen am 27 November 2020, 17:42:52
addLog funktioniert prinzipiell auch bei FileLog, ist dort allerdings nicht im Modulcode enthalten, sondern muss in die 99_myUtils.pm gepackt werden.

DbLog hat das übrigens aus den myUtils "abgeschrieben", denn addLog() existiert schon SEEEEEHR viel länger als die Funktion in DbLog.
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: TomLee am 27 November 2020, 17:49:14
Zitat
file oder DB?

file. Super  ::), mit dem AT hätt ich auch selbst drauf kommen.
Das werd ich erstmal machen und mich dann zu statistics einlesen.

Danke für die Rückmeldungen / Tipps
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: amenomade am 28 November 2020, 00:45:38
Ich verstehe die vorgeschlagene Lösung mit at und addLog nicht: so wird ja zusätzlich countsPerDay um 23:59:59 geloggt, aber das beantwortet nicht die Frage "nur das letzte Reading des Tages".
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: kadettilac89 am 28 November 2020, 10:16:29
Zitat von: amenomade am 28 November 2020, 00:45:38
Ich verstehe die vorgeschlagene Lösung mit at und addLog nicht: so wird ja zusätzlich countsPerDay um 23:59:59 geloggt, aber das beantwortet nicht die Frage "nur das letzte Reading des Tages".

zusätzlich mit "event-on-change-reading" alle Reading setzen die immer geschrieben werden sollen.

Das zusätzliche Reading zum Tagesende nicht einschließen sondern nur mit addLog schreiben.
Titel: Antw:Nur letztes Reading des Tages loggen
Beitrag von: amenomade am 28 November 2020, 10:44:23
Zitat von: kadettilac89 am 28 November 2020, 10:16:29
zusätzlich mit "event-on-change-reading" alle Reading setzen die immer geschrieben werden sollen.

Das zusätzliche Reading zum Tagesende nicht einschließen sondern nur mit addLog schreiben.
Ok, ja, addLog nutzt "trigger" und zwingt damit ein Event. Hatte es nicht mehr im Kopf. Alles gut.