[gelöst] Loggen von Werten gelingt, erzeugt aber HASH-Einträge im Log

Begonnen von andies, 15 Dezember 2018, 16:03:34

Vorheriges Thema - Nächstes Thema

andies

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.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

herrmannj

Was willst du denn erreichen? Warum so und nicht per Userreading?

andies

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.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

herrmannj

naja, muss jeder selber wissen.

Ohne weitere Infos wer wie was aufruft kann man nur raten. Geraten: nimm das "{}" beim userreading raus

andies

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.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann