FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: andies am 15 Dezember 2018, 16:03:34

Titel: [gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log
Beitrag von: andies am 15 Dezember 2018, 16:03:34
Ich möchte gern Werte aus zwei Geräten (ein Temperaturmessgerät und mein Gaszähler) über einen längeren Zeitraum erfassen. Dazu habe ich ein FileLog definiert

Internals:
   DEF        ./log/GasTemperaturRegression.log FileLog_GasTemperaturRegression.*
   FD         27
   NAME       FileLog_GasTemperaturRegression
   NOTIFYDEV  FileLog_GasTemperaturRegression.*
   NR         70
   NTFY_ORDER 50-FileLog_GasTemperaturRegression
   REGEXP     FileLog_GasTemperaturRegression.*
   STATE      active
   TYPE       FileLog
   currentlogfile ./log/GasTemperaturRegression.log
   logfile    ./log/GasTemperaturRegression.log
   READINGS:
     2018-12-15 15:51:51   linesInTheFile  463
     2018-12-15 15:51:51   logEntry        HASH(0xbb60af0)
Attributes:
   logtype    text
   userReadings logEntry {}

und der Eintrag wird ausgelöst durch folgenden Perlbefehl

sub RegressionSetzen(){
my $Daten = "Gas: ";
   $Daten .= ReadingsVal("Gasrechner", "Heizungskeller_Gas_EnergyCostDay","")." Min: ";
   $Daten .= ReadingsVal("BresserTemeo_1","tmin","")." Max: ".ReadingsVal("BresserTemeo_1", "tmax","");
fhem("setreading FileLog_GasTemperaturRegression logEntry ".$Daten);
}

Rufe ich den Code auf, wird auch der Eintrag korrekt vorgenommen. Zum selben Zeitpunkt wird aber mir unverständlicher Text in den Logfile geschrieben:

2018-12-15_15:51:51 FileLog_GasTemperaturRegression logEntry: Gas: 5.964 Min: -0.4 Max: 00.9
2018-12-15_15:51:51 FileLog_GasTemperaturRegression logEntry: HASH(0xbb60af0)

Weiß jemand was ich falsch mache?

<edit> Ich war immer davon ausgegangen, dass man bei usereadings die Klammern setzen muss. Das ist aber falsch.
Titel: Antw:[gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log
Beitrag von: herrmannj am 15 Dezember 2018, 17:28:42
Was willst du denn erreichen? Warum so und nicht per Userreading?
Titel: Antw:[gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log
Beitrag von: andies am 15 Dezember 2018, 18:06:06
Zitat von: herrmannj am 15 Dezember 2018, 17:28:42
Warum so und nicht per Userreading?
Weil ich da nicht erfolgreich war. Ich will nur die Logeinträge erreichen, mehr nicht. Ich habe das nicht anders geschafft.
Titel: Antw:[gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log
Beitrag von: herrmannj am 15 Dezember 2018, 18:24:29
naja, muss jeder selber wissen.

Ohne weitere Infos wer wie was aufruft kann man nur raten. Geraten: nimm das "{}" beim userreading raus
Titel: Antw:[gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log
Beitrag von: andies am 15 Dezember 2018, 19:02:37
Zitat von: herrmannj am 15 Dezember 2018, 18:24:29
Ohne weitere Infos wer wie was aufruft kann man nur raten.
Danke für den Tipp, das {} nehme ich raus. Aber wieso reichen die Infos nicht aus? Oben steht das list des Gerätes und der Aufruf des Perl-Codes erfolgt in YAAHM, was aber mW belanglos ist - denn der Fehler erscheint schon, wenn ich das in der Kommandozeile eingebe.