OH 3.4 - Rule bleibt auf ewig in "Initializing"

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
inflames2k
Beiträge: 3
Registriert: 28. Apr 2024 09:56
Answers: 0

OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von inflames2k »

Hallo,

mit Shelly H&T erfasse ich Temperatur und Luftfeuchtigkeit in verschiedenen Räumen. Soweit so gut. Diese liefern jedoch nur Werte bei Änderung.
Um den Verlauf jedoch 'hübsch' in Diagrammen darzustellen wollte ich zyklisch den letzten Wert noch einmal in meiner Influxdb Persistence speichern.

Initial habe ich ein Script geschrieben und probiert ob dieses funktioniert. Anschließend habe ich eine Rule erstellt, die alle 10 Minuten für die betroffenen Items persist aufruft. Diese Rule bleibt jedoch dauerhaft im Status "Initializing" und wird auch nicht ausgeführt. Rules habe ich zuvor noch nicht verwendet.

Der Code der Rule ist:

Code: Alles auswählen

configuration: {}
triggers:
  - id: "1"
    configuration:
      cronExpression: "*/10 * * * *"
    type: timer.GenericCronTrigger
conditions: []
actions:
  - inputs: {}
    id: "2"
    label: AutoPersist
    configuration:
      type: application/vnd.openhab.dsl.rule
      script: |-
        // temperaturen persistieren
        Klima_1_Temperatur.persist("influxdb");
        Klima_2_Temperatur.persist("influxdb");
        Klima_3_Temperatur.persist("influxdb");
        Klima_4_Temperatur.persist("influxdb");
        
        // luftfeuchtigkeiten persistieren
        Klima_1_Luftfeuchtigkeit.persist("influxdb");
        Klima_2_Luftfeuchtigkeit.persist("influxdb");
        Klima_3_Luftfeuchtigkeit.persist("influxdb");
        Klima_4_Luftfeuchtigkeit.persist("influxdb");
    type: script.ScriptAction
Hat jemand eine Idee, woran das liegen kann und wie ich das Problem gelöst bekomme?

Benutzeravatar
lenschith
Beiträge: 247
Registriert: 11. Dez 2020 22:36
Answers: 0

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von lenschith »

Ich verstehe dein Ausgangsproblem nicht.
Das legst du doch in der persist Strategie fest z. B. "everychange" und die Daten sind automatisch in der influxDB

https://www.openhab.org/docs/configurat ... figuration

Gruß Lenschi
openHAB4.1.2 in einem Docker Container auf RPI4b-4GB, AVM: Fritz!Box 7590 - DECT301 - Comet, DECT210, DECT200, DECT440, Alexa, Shelly, Tasmota, ESP Easy, WLED

inflames2k
Beiträge: 3
Registriert: 28. Apr 2024 09:56
Answers: 0

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von inflames2k »

Hallo,

das Ausgangsproblem ist, das ich nur bei Temperaturänderungen neue Werte bekomme. Im Chat kommt dann eben ewig nix, bis mal wieder vom Temperatursensor ein Wert übermittelt wurde. Eine spezielle Persistence-Konfiguration für InfluxDB ist nicht vorhanden und ich würde die jetzt auch ungern im Filesystem anlegen.

Aber das ist hier ja auch nicht das Ding. Ich habe auch schon andere Routinen versucht anzulegen. Aber immer mit dem gleichen Ergebnis. Die Routine bleibt im Status "Initializing". Das ist hier ja eigentlich das Grundlegende Problem für das ich eine Lösung suche.

Harka
Beiträge: 317
Registriert: 30. Apr 2021 13:13
Answers: 15

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von Harka »

Code: Alles auswählen

cronExpression: "* 0/10 * * * ? *"
Abgesehen davon dass ich die Notwendigkeit dieser Regel nicht verstehe, Du kannst auch über die UI jede Persistenz einzeln konfigurieren (Settings/ InfluxDB Persistence/Persistence configuration).*
* gerade noch eingefallen - geht wohl erst ab OH 4 ?

inflames2k
Beiträge: 3
Registriert: 28. Apr 2024 09:56
Answers: 0

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von inflames2k »

Danke Harka. Dein Hinweis mit OH4 und das es dort über die UI Einstellbar ist habe ich aber auch zum Anlass genommen um ein Upgrade auszuführen.
Zuvor habe ich natürlich noch deine cronExpression geteset. - Damit funktionierts tatsächlich.

Nun aber wohl nicht mehr notwendig.

Benutzeravatar
udo1toni
Beiträge: 14034
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von udo1toni »

Was soll denn die Cron Expression bewirken? Wenn es um "alle zehn Minuten" geht, dann ist die korrekte Version diese hier:

Code: Alles auswählen

cronExpression: "0 0/10 * * * ?"
alle Zehn Minuten wird zur Sekunde 0 in der Minute die Rule gestartet.
openHAB nutzt QuartzCron, d.h. "s m h T M W J"
  • s = Sekunde,
  • m = Minute,
  • h = Stunde,
  • T = Tag,
  • M = Monat,
  • W = Wochentag,
  • J = Jahr.
  • J ist optional und kann einfach weg gelassen werden.
  • T und W können nicht gleichzeitig gesetzt werden. Um dies kenntlich zu machen, muss exakt einer der beiden Werte mit ? maskiert werden.
  • * bedeutet: Jeder Wert ist erlaubt.
  • x/y bedeutet: Beginnend mit x jeder y-te Wert (also z.B. 5/12 bedeutet 5,17,29,41,53,65...) Die Reihe wird so lange fortgeführt, bis es zum Überlauf auf der Position kommt, dann wird von vorne gestartet
    */10 ist unsinnig, allerdings wird openHAB gewöhnlich dennoch alle 10 Zeiteinheiten den Trigger ausführen und * einfach mit dem Wert ersetzen, der zum Einlesen der Rule gerade aktuell war.
  • a,b,c,d bedeutet; bei jdem Wert a, b, c oder d
  • a-b bedeutet: jeder Wert zwischen a und b (einschließlich)
Wo sinnvoll, können die Definitionen auch miteinander kombiniert werden, also z.B. 1-3,5-7 im Wochentags-Feld wäre Freitag bis Mittwoch (also ohne Donnerstag)
In den Feldern, in denen es auch Klartextnamen gibt (Monat und Wochentag) dürfen auch die jeweiligen englischen Abkürzungen verwendet werden, z.B. MON-SUN oder JAN,MAR,MAY,JUL,AUG,OCT,DEC für alle Monate mit 31 Tagen :)
Es gibt noch weitere Spezialitäten, z.B. L im Zusammenhang mit dem Wochentag (z.B. letzter Sonntag im Monat) oder auch x# für den x-ten bestimmten Wochentag im Monat, auch z.B. der vorletzte Tag des Monats wäre möglich (also je nach Monat der 26., 28. oder 29.), L-2 als Tag reicht.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet

Harka
Beiträge: 317
Registriert: 30. Apr 2021 13:13
Answers: 15

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von Harka »

Jup, sorry.
Habs, nachdem ich den Fehler auf Cron eingrenzen konnte, beim 2. mal falsch zusammen geklickt. Hatte die Testregel noch nicht weggeschmissen und kann daher sagen das sie mit diesen Werten jede 10. Minuten im 10 Sekunden Takt ausgeführt wird. :geek:
Der "Hauptfehler" mit der Initializing war damit aber wenigstens weg.

Ich hatte mir schon gedacht - wenn das der Udo sieht ... - aber nicht in dem Sinn, dass ich was abbekomme :lol:

Benutzeravatar
udo1toni
Beiträge: 14034
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: OH 3.4 - Rule bleibt auf ewig in "Initializing"

Beitrag von udo1toni »

Ich möchte eigentlich nicht oberlehrerhaft rüber kommen, mir ist wichtiger, dass die Leute verstehen, was da passiert und warum :) also bitte nicht geprügelt fühlen, ich habe gar keine Rute...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet

Antworten