[gelöst] DbLog - dreimal gleicher Wert von einem Device

Begonnen von Vize, 09 März 2022, 17:02:00

Vorheriges Thema - Nächstes Thema

Vize

Hallo Beta-User,

besten Dank nochmal für deine Erläuterungen. Das meiste habe ich verstanden...

Bei deinem letzten Satz habe ich wohl ein Brett vor dem Kopf.
Was meinst du mit "was, das FileLog geschrieben hast, das du für das SVG auszuwerten versuchst"?

Ich nutze DbLog und lasse mir daraus die SVG-Plots erzeugen...

VG
Andreas

Beta-User

Na ja, wie dem auch sei: Es wird ein Wert irgendwohin geschrieben, der nicht so ist, wie SVG das gerne hätte.
Ggf. mal den Plot-Editor bemühen und die Daten ("preprocessed values" oder so) anzeigen lassen.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Vize

Ok, danke dir nochmal für deine Geduld.

Ist nur seltsam, dass das vorher nicht auftrat. Hab sonst nix geändert, auch nicht an den SVG-Plots...nur den Tipp von Jamo mit ReadingsNum getestet.
Hab eben mal auf den "alten Zustand" mit ReadingsVal gestellt, aber die Logeinträge kommen immer noch.

VG
andreas

Vize

#18
Guten Morgen,

ich habe es nun mal so umgestellt, dass ich mir das Reading aus einem anderen Kanal des Devices loggen lasse, ohne auf das Reading "state" Bezug nehmen zu müssen.

Dazu habe ich dort das userReading
power_gerundet:power.* {ReadingsNum($name,'power',0,0)}
angelegt.

Dazu dann noch
event-on-change-reading power,power_gerundet
damit die weiteren "unwichtigen" Readings keine Events erzeugen.

**EDIT*** Das lässt sich noch durch
event-on-change-reading power.*
verkürzen. ***EDIT***

Über
DbLogInclude power_gerundet
wird das Reading nun in die Datenbank geschrieben.

Auch hier das gleiche Verhalten wie im Ausgangspost, das Reading erscheint in der current Tabelle dreimal und in der history Tabelle einmal.

Vielleicht hat ja noch jemand eine Idee, sonst nehme ich den Mehrfacheintrag in der current Tabelle einfach hin.

Sonniges Wochenende noch!

VG
Andreas

Vize

Guten Morgen,

so, habe dann doch noch eine Lösung gefunden.
Wurde sogar schonmal hier im Forum behandelt...siehe hier
Ja, ich weiß, hätte ich auch vorher danach suchen können...

Jedenfalls werden nach Anlegen eines Indexes für die Tabelle current nun die Werte nicht mehr doppelt in die Datenbank geschrieben.
Für die Tabelle history hatte ich den Index schon von Beginn an drin, daher tauchten dort die Werte nicht doppelt auf.
Das Ganze funktioniert wohl auch mit Anlegen eines "Primary Key" in der Tabelle.

Bezüglich der Fehlermeldungen im Logfile zum SVG habe ich das so gelöst, dass ich die SVG-Plots alle gelöscht und nochmal neu angelegt habe.
Die Warnungen im Logfile tauchen nun nicht mehr auf.

Vielen Dank nochmal an alle für die Tipps und die Unterstützung!

VG
Andreas