FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Wettermodule => Thema gestartet von: blofield am 19 März 2016, 11:26:11

Titel: Weather: Yahoo, readings wind_direction und wind_condition in DBLog falsch
Beitrag von: blofield am 19 März 2016, 11:26:11
Hallo Community,

ich nutze Weather mit den Daten von Yahoo. Zudem ist bei mir DBLog aktiviert.
Ich wollte jetzt aus den Daten einen Plot erzeugen, der mir Windstärke und Windrichtung anzeigt.
Dabei ist mir aufgefallen, dass in der Datenbank beim Logging der Readings die beiden Readings:
wind_condition und wind_direction in das Reading wind_direction geloggt werden.

wind_condition liefert aber anders als wind_direction auch Text z.B. Wind: NNW 1 km/h
wind_direction nur numerische Werte z.B. 330

Wenn man jetzt einen Plot macht, der wind_direction als input verwendet, dann sind leider auch wind_condition Werte dabei, weil die in der DB in das selbe reading geloggt werden.
Dieses wird im Plot als Nulllinie ausgewertert - und sieht dann nicht wie gewünscht aus.

Ein DBLogExclude auf wind_condition.* war mein erster Lösungsansatz, das funktioniert aber nicht !?
Wer hat noch einen anderen Vorschlag?

Danke!
blofield
Titel: Antw:Weather: Yahoo, readings wind_direction und wind_condition in DBLog falsch
Beitrag von: betateilchen am 19 März 2016, 11:30:44
Zitat von: blofield am 19 März 2016, 11:26:11
Wer hat noch einen anderen Vorschlag?

einfache Lösung: ein userreading anlegen.
komplizierte Lösung: eine regexp verwenden, die bei der Ploterstellung den benötigten Wert aus dem reading extrahiert.
Titel: Antw:Weather: Yahoo, readings wind_direction und wind_condition in DBLog falsch
Beitrag von: blofield am 19 März 2016, 17:21:53
Danke!
Userreading funktioniert prima :D

Regexp im gplot hatte ich auch versucht, da wurde dann auch bei "show preprocessed input." richtig herausgefiltert, jedoch waren die Zeilen im processed Log dann NULL (durch die Regexp) und das sah dann im Plot leider genau so aus wie ohne Regexp...

Zudem interessiert mich, ob es ein Fehler im DBLog ist, oder im Weather Modul. Ich würde ja lieber den Fehler korrigieren, als die Symptome kaschieren.

blofield
Titel: Antw:Weather: Yahoo, readings wind_direction und wind_condition in DBLog falsch
Beitrag von: atueting am 29 April 2016, 12:15:49
Hallo!

Das Module bringt die Events 'wind_condition' und 'wind_direction' durcheinander!  Er legt hierfür jeweils die gleichen Readings 'wind_direction' an!  Somit ist es unmöglich einen Plot zu erzeugen!

atueting
Titel: Antw:Weather: Yahoo, readings wind_direction und wind_condition in DBLog falsch
Beitrag von: harmuel am 15 Oktober 2016, 20:36:56
Hallo,

hatte das gleiche Problem, bei mir gab es im plot zu jedem Zeitwert zwei unterschiedliche Werte für die Windrichtung...

Daraufhin habe ich in meiner MySQL-Datenbank ein event eingerichtet, das regelmäßig das fehlerhafte reading korrigiert:

UPDATE current SET reading = 'wind_condition' WHERE event LIKE 'wind_condition%' AND reading LIKE 'wind_direction';
UPDATE history SET reading = 'wind_condition' WHERE event LIKE 'wind_condition%' AND reading LIKE 'wind_direction';

Funktioniert einwandfrei, die MySQL muß allerdings mindestens v5.1 haben und die den event_scheduler aktivieren mit:

SET GLOBAL event_scheduler = ON;