FHEM Forum

FHEM => Automatisierung => Thema gestartet von: fruemmel am 06 Januar 2015, 17:43:44

Titel: DbLog füllt reading, value und unit bei einem Device (KM200) nicht
Beitrag von: fruemmel am 06 Januar 2015, 17:43:44
Hallo,

ich habe das Problem, dass in meinem DbLog bei einem Gerät (KM200, Buderus-Anbindung aus contrib) das DbLog nur unvollständig gefüllt wird. Hier die Original-Events aus dem Event-Log:
2015-01-06 17:31:28 km200 mykm200 /system/sensors/temperatures/outdoor_t1: 3.5
2015-01-06 17:31:28 km200 mykm200 /system/sensors/temperatures/supply_t1: 49.8
2015-01-06 17:34:19 LaCrosse LaCrosse_10 temperature: 2.2


und hier der Auszug per sqlite3 aus der Tabelle history:
2015-01-06 17:31:28|mykm200|KM200|/system/sensors/temperatures/outdoor_t1: 3.5|||
2015-01-06 17:31:28|mykm200|KM200|/system/sensors/temperatures/supply_t1: 49.8|||
2015-01-06 17:34:19|LaCrosse_10|LACROSSE|temperature: 2.2|temperature|2.2|°C


Wie man sieht, wird bei dem Lacrosse-Sensor das DbLog korrekt gefüllt, bei dem KM200-Werten bleiben die Spalten reading, value und unit leer obwohl das Event richtig erfasst wird.
Kann das mit den "/" im reading-Namen zu tun haben? Oder liegt da noch ein Fehler im Modul KM200 vor?

Gruß Wolfgang
Titel: Antw:DbLog füllt reading, value und unit bei einem Device (KM200) nicht
Beitrag von: devil77 am 07 Januar 2015, 07:45:24
Hatte ich bei meinem Homematic Sensor auch. Ich denke es hängt damit zusammen das die Definition zu den Typen nicht in der dblog hinterlegt sind.
Damit weiß dblog nicht wie es die Werte interpretieren soll.
Wenn ich dblog richtig verstanden habe dann wird bei readings die "temperature" liefern unabhängig vom Gerätetyp die Datenbank richtig befüllt.
Aber bei deinen KM200 weiß dblog nicht wie es die Werte einfügen soll.
Hier hilft nur die 93_dblog selber anzupassen.
Titel: Antw:DbLog füllt reading, value und unit bei einem Device (KM200) nicht
Beitrag von: fruemmel am 07 Januar 2015, 19:56:54
Zitat von: devil77 am 07 Januar 2015, 07:45:24
Hatte ich bei meinem Homematic Sensor auch. Ich denke es hängt damit zusammen das die Definition zu den Typen nicht in der dblog hinterlegt sind.
Damit weiß dblog nicht wie es die Werte interpretieren soll.

Danke, das war der entscheidende Hinweis. Ich habe mir gerade den Code angesehen.
In 93_DbLog.pm muss entweder in der Funktion DbLog_ParseEvent der Gerätetyp behandelt werden, oder es muss im jeweiligen Modul (also bei mir km200.pm) die Funktion <Typ>_DbLog_split($) vorhanden sein. Die gibt es, ist aber noch nicht mit Leben gefüllt.
Titel: Antw:DbLog füllt reading, value und unit bei einem Device (KM200) nicht
Beitrag von: Tobias am 14 März 2015, 15:40:27
Korrekt ist es das im km200 Modul sauber zu implementieren

Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk

Titel: Antw:DbLog füllt reading, value und unit bei einem Device (KM200) nicht
Beitrag von: JoeALLb am 06 April 2017, 11:34:42
Hinweis: Die aktuelle Testversion aus https://forum.fhem.de/index.php/topic,65860.240.html hat mit valueFN eine Möglichkeit, das Logging zu korrigieren.

--> wurde eingecheckt.-