Warnungen im Log nicht nachvollziehbar

Begonnen von Krallos, 11 Dezember 2014, 21:50:44

Vorheriges Thema - Nächstes Thema

Krallos

Hallo Freunde,


im FHEM-Log fallen mir immer wieder Meldungen zu zwei Modulen auf:


2014.12.11 18:11:07 1: PERL WARNING: Argument "7.697 m^3 Gas_rate: 0.720 m^3/h B: 14321.00 cts B_rate: ..." isn't numeric in sprintf at ./FHEM/98_SVG.pm line 1728.
2014.12.09 22:17:30 1: PERL WARNING: ^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE $/ at ./FHEM/93_DbLog.pm line 530.



Ich bin ratlos, was die Ursache sein könnte.




Gruß Christian
Synology RackStation 814 - FHEM 5.6 - USB9097+ein paar DS18B20 und einen Dual-S0-Counter von eService-Online im Eigenbau.

Dietmar63

Überprüf' mal deine Definitionen zum logging und die Aufbereitung von SVG-Sachen.

Die Warnungen hast du schon immer gehabt, aber sind in den Untiefen von fhem verschwunden.
Wenn du das Forum nach PERL WARNING durchsuchst wirst du fündig mit Tipps
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

rudolfkoenig

Das SVG Modul kann nur Zahlen verarbeiten, ein Text was mit einem Zahl beginnt, ist kein Zahl. Man muss beim Konfigurieren von DbLog dafuer sorgen, dass alles was nicht benoetigt wird, abgeschnitten wird.

^* ist kein gueltiger Regexp.

Krallos

Hallo,


Ok das mit dem DBLOG Modul leuchtet ein. Da ich in der DBLOG alles mitschreibe und noch nix explizit ausblende, wird wohl irgendein Reading Buchstaben senden.


Was ich nicht verstehe, ist die Meldung

2014.12.11 18:11:07 1: PERL WARNING: Argument "7.697 m^3 Gas_rate: 0.720 m^3/h B: 14321.00 cts B_rate: ..." isn't numeric in sprintf at ./FHEM/98_SVG.pm line 1728.




Der Verursacher ist eine Plot-datei mit einer regexp die bis vor ein paar Monaten ohne Fehlermeldung lief.


#DbLog 1W_temp_Aussen:temperature::
#DbLog 1W_S0Zaehler_Gas:day:::$val=~s/.*Gas:\s*([\d.]*).*/$1/eg



Das reading sieht so aus:
day D11 Gas: 19.16 m^3 GasM: 126.38 m^3 B: 15801.87 cts BM: 15790.00 cts 2014-12-11 23:57:43


Gruß Christian
Synology RackStation 814 - FHEM 5.6 - USB9097+ein paar DS18B20 und einen Dual-S0-Counter von eService-Online im Eigenbau.

Dietmar63

Du musst das "m^3" durch Erweiterung des Regexp vorher abspalten. Es sollte im Forum dafür genug Beispiele geben.

Die Fm gab es schon vorher. Sie wurde durch fhem aber in fhem 5.5 noch unterschlagen. Durch eine von mir vorgeschlagene Änderung werden diese Fm nicht mehr unterdrückt.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

rudolfkoenig

ZitatDas reading sieht so aus:
Eben nicht, siehe Fehlermeldung. Da steht was vom Gas_rate:, dein Regexp versucht es mit Gas:

Btw: benoetigst du das e im regexp modifier? Mit e sollte es deutlich langsamer sein, als ohne.

Krallos

Hallo Rudolf,


Regexp verursachen in meinem Kopf nur Knoten. Ich hatte mir diese  mit viel Mühe dieses Jahr zusammen "gebastelt". Einiges hatte ich verstanden, wiederum anderes nicht.
Also das "e", keine Ahnung wofür das gut ist :(


owcount wirft mir das Reading "day" aus und ich möchte eigentlich nur den zahlen-Wert des täglichen Verbrauch in einen Plot darstellen. Siehe Screenshot.
Das funktioniert ja auch .. nur bei jedem Aufruf des Plots erscheint dann die Fehlermeldung.


Gruß Christian
Synology RackStation 814 - FHEM 5.6 - USB9097+ein paar DS18B20 und einen Dual-S0-Counter von eService-Online im Eigenbau.

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Prof. Dr. Peter Henning

Ich schlage zunächst einmal vor, statt des m^3 ein m³ zu verwenden.

Zweitens werde ich in der nächsten Version des Moduls OWCOUNT ein paar neue readings einfügen

<channel>_day => Tagessumme des gegenwärtigen Tages, ermittelt aber nur am Ende des Tages => kann direkt in einer Log-Datei abgefangen werden. Ohne Einheit.
<channel>_days => Summe über alle Tage des gegenwärtigen Monats, ebenfalls am Ende des Tages ermittelt. Ohne Einheit.

LG

pah

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm