Für meine Langzeitdatenbank möchte ich einen Wert pro Zeitintervall an die Infuxdb weiterreichen.
Über die Helfer kann ich zumindest Zähler aufbauen, die pro Intervall hochzählen … aber wie komme ich an den letzten Wert (z.B. des Tages) heran um ihn dann an die Datenbank zu senden?
Bisher habe ich das komplett über node-red probiert, was aber leider sehr aufwändig ist.
Gibt es eine bessere/einfachere Lösung?
Gruß
Ulf
1 „Gefällt mir“
Ich lasse mich gerne eines besseren belehren, würde mit folgender Erfahrung aber im Moment behaupten, dass das aus HA heraus nicht geht.
Warum es nicht geht?
Ich habe einen Helfer der meinen Strompreis beinhaltet.
In der influxDB habe ich festgestellt, dass der Sensor einmalig an die influxDB versandt wurde und danach nie wieder. Um nun diesen Wert in grafana trotzdem auswerten und angezeigt zu bekommen habe ich es so eingerichtet (in der influxDB per influxDB CLI Skipt), dass dieser Wert alle 4h in die influxDB als neuer Wert geschrieben wird.
Dann ist mir aufgefallen, dass der Wert nicht nur bei Veränderungen in die influxDB geschrieben wird, sondern auch jedes Mal, wenn ich HA neu starte.
Letzteres würde in Deinem Fall bedeuten, dass du am Ende immer wieder Tageswerte mehrfach in der influxDB hättest, was ja dann kontraproduktiv wäre.
Falls Dich das alles nicht stört, dann wäre meine spontane Idee für jeden Sensor, den du in die Langfristig-influxDB schreiben möchtest einen weiteren DummySensor (z.B. Sensor1_influxDB) anzulegen und in diesen dann täglich per Automation den Wet von Sensor1 zu schreiben. Die Automation läuft täglich 23:58. Würde entweder für jeden Sensor eine Automation bedeuten oder vielleicht geht es auch, dass man in einer Automation ein Script aufruft, das dann alle Sensoren aktualisiert. Die Sensorveränderung löst dann ganz alleine das Speichern in der influxDB aus.
Ganz durchdacht ist das sicherlich nicht, denn welchen Wert haben die DummySensoren nach einem HA restart, wie geht man damit um, wenn sich der Sensorwert nicht verändert hat und und und.
Ich bin noch auf der Suche nach einer influxDB internen Lösung bei der die Daten aus dem bucket mit sekundengenauen Daten in ein Langfristbucket verdichtet werden.
Da ist das verdichten aber auch das Problem, denn verdichten kann folgendes bedeuten:
- Den Tagesendwert
- die Summe aller Tageswerte
- den Mittelwert alles Tageswerte
und da bin ich noch auf der Suche nach einer funktionierenden Lösung.
Viel Erfolg
Claudius