Seite 1 von 1
Daten bei Systemstart widerherstellen
Verfasst: 4. Okt 2019 17:08
von Nasryn
Hallo,
Ich habe gelesen, dass ich, sofern ich meine Persitence (Influxdb) eingerichtet habe, mit einer passenden Strategie alle gespeicherten Werte beim Systemstart wiederherstellen kann.
Ich will das wie folgt machen -> * : strategy = restoreOnRestart
Ist dies so möglich? Denn in Openhab steht das "restoreOnRestart" vordefiniert ist oder benötige ich dafür eine Rule und muss alle Variablen manuell updaten?
Re: Daten bei Systemstart widerherstellen
Verfasst: 4. Okt 2019 17:52
von sihui
Nasryn hat geschrieben: ↑4. Okt 2019 17:08
Ich will das wie folgt machen -> * : strategy = restoreOnRestart
Am Besten einfach in die Doku schauen:
https://www.openhab.org/docs/configurat ... on-restart
Du kannst entweder jedes einzelne Item auflisten, oder ein Sternchen (*) für jedes Item oder du fügst jedem Item eine Gruppe hinzu und lässt diese dann persistieren mit anschließendem restoreOnStartup.
Die Variante mit der Gruppe ist normalerweise die sinnvollste Variante:
Code: Alles auswählen
Group gRestore
Switch deinItem (gRestore) { channel= ...}
Code: Alles auswählen
Items {
gRestore* : strategy = everyChange, restoreOnStartup
}
Re: Daten bei Systemstart widerherstellen
Verfasst: 4. Okt 2019 19:19
von udo1toni
Die Strategie heißt restoreOnStartup. influxdb ist nicht so besonders gut, um alle Items bei Systemstart zu laden, dazu ist mapdb wesentlich besser geeignet.
openHAB kann mit mehreren Persistence Services gleichzeitig arbeiten, und zwar ohne jegliche Einschränkungen - vielleicht abgesehen von das Tatsache, dass man die Persistence in Rules und Sitemaps explizit angeben muss, sofern es sich nicht um die default Persistence handelt.
Aber auch, einfach alle Items pauschal auf den Status vor dem Shutdown zu setzen, ist nicht zu empfehlen. Etliche Addons laden beim Start automatisch aktuelle Status, es ist durchaus möglich, dass die Persistence erst nach dem Addon geladen wird, dann würde der aktuelle Status durch einen alten ersetzt.
Re: Daten bei Systemstart widerherstellen
Verfasst: 5. Okt 2019 03:32
von eiGelbGeek
Nasryn hat geschrieben: ↑4. Okt 2019 17:08
Hallo,
Ich habe gelesen, dass ich, sofern ich meine Persitence (Influxdb) eingerichtet habe, mit einer passenden Strategie alle gespeicherten Werte beim Systemstart wiederherstellen kann.
Ich will das wie folgt machen -> * : strategy = restoreOnRestart
Ist dies so möglich? Denn in Openhab steht das "restoreOnRestart" vordefiniert ist oder benötige ich dafür eine Rule und muss alle Variablen manuell updaten?
Ja ... aber eine influxDB ist völlig overdressed für nur restoreOnStartup....
influxDB ist eine mächtige Datenbank und wird benutzt wenn man z.b. die Temperatur in einen Grafenverlauf darstellen will mit z.b. Grafana
Für einen einfachen restoreOnStartup solltest dir folgendes anschauen.
https://www.openhab.org/addons/persistence/mapdb/
Re: Daten bei Systemstart widerherstellen
Verfasst: 5. Okt 2019 03:38
von eiGelbGeek
udo1toni hat geschrieben: ↑4. Okt 2019 19:19
openHAB kann mit mehreren Persistence Services gleichzeitig arbeiten, und zwar ohne jegliche Einschränkungen - vielleicht abgesehen von das Tatsache, dass man die Persistence in Rules und Sitemaps explizit angeben muss, sofern es sich nicht um die default Persistence handelt.
Hast du dafür mal eine Bespiel Zeile ... wie man die Persistence in Rules und Sitemaps angibt ... arbeite derzeit nur mit influx und laufe hin und wider in der Problematic das die DB noch nicht geladen ist

Re: Daten bei Systemstart widerherstellen
Verfasst: 5. Okt 2019 08:51
von sihui
eiGelbGeek hat geschrieben: ↑5. Okt 2019 03:38
wie man die Persistence in Rules und Sitemaps angibt
https://community.openhab.org/t/average ... /2?u=sihui
Code: Alles auswählen
Foo.lastUpdate("rrd4j")
Foo.averageSince("MySQL")
Foo.averageSince(now.minusMinutes(5), “rrd4j”)
Re: Daten bei Systemstart widerherstellen
Verfasst: 7. Okt 2019 17:35
von eiGelbGeek
Danke
Also müsste ich es nur so ändern... sonst nirgend oder? Natürlich müssen beide DBs installiert und konfiguriert sein
Code: Alles auswählen
//###################//
//Variablen für Rules//
//###################//
val Number MODE_OFF = 0
val Number MODE_STANDBY = 1
val Number MODE_ACTIVE = 2
val Number MODE_FINISHED = 3
val Number MODE_CREASE_PROTECTION = 4
var Number Trockner_Counter = 0
//#########################################################################//
//Trockner Status anhand des aktuellen Stromverbrauches setzen //
//Wenn Status Fertig, dann Telegram senden und Sprachausgabe Funkgong + LED//
//#########################################################################//
rule "Trockner Status"
when
Item Steckdose_Trockner_Power changed
then
if (Steckdose_Trockner_Power.state < 1) Trockner_Status.postUpdate(MODE_OFF)
if (Steckdose_Trockner_Power.state > 100 && Trockner_Status.state != (MODE_CREASE_PROTECTION) && Trockner_Status.state != (MODE_FINISHED) || Steckdose_Trockner_Power.state > 500){
Trockner_Status.postUpdate(MODE_ACTIVE)
}
if (Trockner_Status.state == (MODE_ACTIVE) && Steckdose_Trockner_Power.state < 2){
Trockner_Counter = Trockner_Counter + 1
}
if (Steckdose_Trockner_Power.state > 1 && Steckdose_Trockner_Power.averageSince(now.minusMinutes(2), "influxdb") < 2) {
if (Trockner_Status.state == MODE_OFF) Trockner_Status.postUpdate(MODE_STANDBY)
}
if (Trockner_Counter > 12){
if (Trockner_Status.state == MODE_ACTIVE){
Trockner_Counter = 0
Trockner_Status.postUpdate(MODE_CREASE_PROTECTION)
}
}
if (Steckdose_Trockner_Power.averageSince(now.minusMinutes(30), "influxdb") < 150){
if (Trockner_Status.state == (MODE_CREASE_PROTECTION)) Trockner_Status.postUpdate(MODE_FINISHED)
}
end
Re: Daten bei Systemstart widerherstellen
Verfasst: 8. Okt 2019 06:58
von sihui
eiGelbGeek hat geschrieben: ↑7. Okt 2019 17:35
Also müsste ich es nur so ändern... sonst nirgend oder?
Ja, müsste passen.
Deine Frage impliziert allerdings das es so bei dir wohl nicht funktioniert ...
Re: Daten bei Systemstart widerherstellen
Verfasst: 11. Okt 2019 18:00
von eiGelbGeek
sihui hat geschrieben: ↑8. Okt 2019 06:58
eiGelbGeek hat geschrieben: ↑7. Okt 2019 17:35
Also müsste ich es nur so ändern... sonst nirgend oder?
Ja, müsste passen.
Deine Frage impliziert allerdings das es so bei dir wohl nicht funktioniert ...
Scheint zu gehen ... hatte zu der Zeit als ich es geändert habe keine Wäsche zu waschen

Re: Daten bei Systemstart widerherstellen
Verfasst: 11. Okt 2019 18:03
von sihui
eiGelbGeek hat geschrieben: ↑11. Okt 2019 18:00
... hatte zu der Zeit als ich es geändert habe keine Wäsche zu waschen
Dann musst du dich bei dem Regenwetter mal öfter in die Pfützen legen
