leere Diagramme nach Update 4.x

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
magarethe
Beiträge: 45
Registriert: 18. Dez 2019 22:16
Answers: 0

leere Diagramme nach Update 4.x

Beitrag von magarethe »

Hallo Forum,

Leider habe ich erst sehr spät gemerkt, das die Diagramme meiner Items nicht mehr angezeigt werden. Ich habe eine Postgres-Datenbank Anbindung konfiguriert und es werden auch die Tabellen angelegt und auch mit Werten gefüllt. Leider werden diese Werte aber nicht mehr in der Diagrammansicht angezeigt.

Folgende Konfigurtion benutze ich, zum Schreiben der Werte in den Tabellen:
File: jdbc.persist

Code: Alles auswählen

Strategies {
    everyMinute : "0 * * * * ?"
}

Items {
	*                       : strategy = everyChange
    gRestoreOnStartup*      : strategy = everyChange, restoreOnStartup
}
Wie gesagt, die Datenbankanbindung funktioniert, da die Tabellen geschreiben werden und auch die Werte hineinlaufen. Leider habe ich bisher nicht gefunden, warum diese Werte vom OH4 nicht mehr ausgewertet werden. Im LOG tauchen auch keine Fehler für die Datenbankanbindung auf.

Habt ihr eine Erklärung warum, das unter OH4 nicht mehr funktioniert. Leider kann ich nicht mehr sagen, ab welchen Update das nicht mehr funktioniert, habe lange nicht mehr in die Diagramme geschaut..

Gruß Magarethe

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

Re: leere Diagramme nach Update 4.x

Beitrag von udo1toni »

Hast Du die default Persistence auch auf jdbc eingestellt? Weil, sonst hast Du die ganze Zeit für die Charts rrd4j verwendet, was ohne weitere Anweisung immer mitinstalliert und genutzt wurde, seit OH4 aber nicht mehr automatisch eingerichtet wird :)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

magarethe
Beiträge: 45
Registriert: 18. Dez 2019 22:16
Answers: 0

Re: leere Diagramme nach Update 4.x

Beitrag von magarethe »

Hallo udo1toni

Folgendes habe ich eingestellt:
persistenz.png
Mehr kann ich hier erst einmal nicht erkennen.

Sorry für meine verspäteten Antwort, war im Urlaub.

Gruß Magarethe
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: leere Diagramme nach Update 4.x

Beitrag von udo1toni »

magarethe hat geschrieben: 25. Mär 2024 09:48 Sorry für meine verspäteten Antwort, war im Urlaub.
Der sei Dir gegönnt :) (nachträglich...)

Schade, es hätte so einfach sein können...

Nächste Idee:
Hast Du bei den Items UoM verwendet? Das heißt, ein Number Item ist dann z.B. vom Typ Number:Power und zeigt entsprechend auch eine Einheit mit an.
Falls das der Fall ist: Seit openHAB4 muss jedem UoM (bzw. QuantityType) Item zwingend eine unit mitgegeben werden. Diese wird allerdings über die Metadaten angegeben (ist halt nachträglich drangeflickt...), so dass das gerne mal vergessen geht.
Die unit des Items gibt an, in welcher Einheit der Status des Items gehalten wird. Das stateDescription Pattern gibt an, wie der Status angezeigt wird.
Die unit des Items darf nur einmal gesetzt werden, falls sie im Verlauf geändert wird, stimmen die älteren Daten der Persistence nicht mehr, denn die Persistence speichert die Unit nicht mit ab, sondern nimmt den nackten Zahlenwert des Items.
Wenn die Charts aus der Persistence gefüllt werden, muss aber die unit vorhanden sein, damit die Werte aus der Persistence korrekt interpretiert werden können.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

magarethe
Beiträge: 45
Registriert: 18. Dez 2019 22:16
Answers: 0

Re: leere Diagramme nach Update 4.x

Beitrag von magarethe »

Hallo Udo1toni

Bei deiner letzten Antwort verstehe ich leider nur "Bahnhof". :oops:

Was ist UoM ?
Wo wird das konfiguriert. Ich schreibe immer noch alles in config-Dateien. Also *.items; *.things und sitemaps.

Also jetzt stehe ich völlig auf dem Schlauch. Tut mir ehrlich leid.

Gruß magarethe

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

Re: leere Diagramme nach Update 4.x

Beitrag von udo1toni »

Kein Problem :)

UoM -> Units of Measurement -> Messwert wird mitsamt der Einheit gehalten. Momentan ist das noch optional, wird aber in kommenden Versionen obligatorisch sein. Wenn ein Channel den Wert mitsamt Einheit liefert, muss das Item dann den Wert auch mit Einheit weiterverarbeiten.
Mittlerweile stellen fast alle Bindings Messwerte als QuantityType zur Verfügung (QuantityTpe ist der Datentyp für UoM, so wie Float für Fließkommazahlen oder Integer für ganze Zahlen) und an vielen Stellen kann man es nachrüsten (z.B. mqtt oder http, dort gibt es in number Channels immer auch den Parameter unit).

UoM beschert dem Anwender zusätzliche Arbeit, weil man nun immer die Einheit mitdenken muss (insbesondere in Rules).

Auf der anderen Seite bringt UoM aber auch Vorteile, z.B.: der Channel liefert eine Ganzzahl, diese steht für die Temperatur, allerdings mit einer Nachkommastelle, statt 22,5 °C wird also 225 als Zahl gesendet. Ich füge als Einheit nun "D°C" und schon verschiebt openHAB das Komma um eine Stelle, ganz ohne zusätzliche Funktionen. Will ich die Temperatur nun darstellen, möchte ich dies vielleicht in °F machen, kein Thema, als stateDescription setze ich "%.1f °F" und schon steht die Temperatur in °F mit einer Nachkommastelle da (und die Umrechnung ist ja durchaus nicht ganz so eingängig...)
Und vielleicht möchte die Werte später aus der Persistence in eine wissenschaftliche Anwendung übernehmen, also sorge ich dafür, dass der Messwert in Kelvin gespeichert wird, also fix die Unit des Items auf K stellen und schon landet der Wert in Kelvin in der Datenbank, ganz ohne zusätzliche Berechnungen.

Ein typisches UoM Item:

Code: Alles auswählen

Number:Temperature Temp_Aussen "Außentemperatur" <temperature> (gAussen) ["Measurement","Temperature"] {channel="uid:des:channels", unit="°C", stateDescription=""[pattern="%.1f °C"]} 
Vorne der Typ, dann der Name und das Label (alles wie gehabt), das icon und die Gruppe(n), dann die Tags, hier handelt es sich um einen Messwert vom Typ Temperatur, abschließend der Link zum Channel, mitsamt Definition der Unit und des Patterns, welches sowohl in der Main UI als auch in Basic UI verwendet wird (man muss es also nicht mehr zum Label dazu schreiben).
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

magarethe
Beiträge: 45
Registriert: 18. Dez 2019 22:16
Answers: 0

Re: leere Diagramme nach Update 4.x

Beitrag von magarethe »

Hallo udo1toni

Vielen Dank für deine ausführliche Erklärung. So langsam dämmert es. ;)

Eine Frage noch in deinem Beispiel ist die hintere Schreibweise so richtig? Sieht ein wenig komisch aus?
Kann da auch noch ein Komma fehlen?
{channel="uid:des:channels", unit="°C", stateDescription="" [pattern="%.1f °C"]}
Wollte nur noch einmal nachfragen, weil dann würde ich alle Items über Ostern umschreiben. :D

Gruß Magarethe

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

Re: leere Diagramme nach Update 4.x

Beitrag von udo1toni »

Ja, das ist ohne Komma korrekt, wobei das Leerzeichen nach dem leeren String gerne auch noch weg kann (nicht muss, aber...)

Code: Alles auswählen

...stateDescription="" [pattern="%.1f °C"]}
                     ^^^ 
Der Part in eckigen Klammern bezieht sich auf den vorherigen String, hier also das "Untermenü" der stateDescription. Die Description selbst wird nicht gesetzt (leerer String), wohl aber einer der Unter-Parameter, nämlich pattern. Das Leerzeichen stört nicht, aber wenn man es weg lässt, wird umso deutlicher, dass die beiden Teile zusammengehören.
Das gleiche Verfahren gilt auch, wenn man einen Link mit einem Profile versieht, da wird dann das Profile als Unter-Parameter des Links selbst angegeben

Code: Alles auswählen

{channel="blah:blih:blubb"[profile="system:follow"]}
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten