FHEM Forum

CUL => Hard- und Firmware => Thema gestartet von: Burny4600 am 27 September 2016, 09:26:57

Titel: 70_JSONMETER.pm PERL WARNING Meldungen
Beitrag von: Burny4600 am 27 September 2016, 09:26:57
Auch bei diesem Gerät treten im LOG PERL WARNING Meldungen seit einiger Zeit auf.
2016.09.26 11:34:54 4: JSONMETER EnergieEG: ReadFromUrl.467 Get json file from http://192.168.17.240:80/a?f=j
2016.09.26 11:34:54 5: JSONMETER EnergieEG: ReadFromUrl.473 received:
HTTP/1.0 200 OK
Content-Type: application/json

{"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"•","con":"OK","sts":"(21)","raw":0}
2016.09.26 11:34:54 4: JSONMETER EnergieEG: ReadFromUrl.475 Socket closed
2016.09.26 11:34:54 4: BlockingCall (JSONMETER_GetJsonFile): created child (9158), uses telnetForBlockingFn_1474882249 to connect back
2016.09.26 11:34:55 4: Connection accepted from telnetForBlockingFn_1474882249_127.0.0.1_52358
2016.09.26 11:34:55 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4584.
2016.09.26 11:34:55 3: stacktrace:
2016.09.26 11:34:55 3:     main::__ANON__                      called by fhem.pl (4584)
2016.09.26 11:34:55 3:     main::fhemFork                      called by FHEM/Blocking.pm (122)
2016.09.26 11:34:55 3:     main::BlockingStart                 called by FHEM/Blocking.pm (78)
2016.09.26 11:34:55 3:     main::BlockingCall                  called by ./FHEM/70_JSONMETER.pm (378)
2016.09.26 11:34:55 3:     main::JSONMETER_GetUpdate           called by fhem.pl (2824)
2016.09.26 11:34:55 3:     main::HandleTimeout                 called by fhem.pl (603)
2016.09.26 11:34:55 5: Cmd: >{JSONMETER_ParseJsonFile('EnergieEG|1|SFRUUC8xLjAgMjAwIE9LDQpDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb24NCg0KeyJjbnQiOiI1MjAxLDcxMyIsInB3ciI6MTg3LCJsdmwiOjEwMywiZGV2IjoiIiwiZGV0IjoiJmJ1bGw7IiwiY29uIjoiT0siLCJzdHMiOiIoMjEpIiwicmF3IjowfQ==')}<
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.572 Extract 2 readings from 2 json parts
2016.09.26 11:34:55 5: JSONMETER EnergieEG: ParseJsonFile.575 Handle 1 3 electricityConsumed 3 1 cnt
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.607 Value 5201713 for reading electricityConsumed extracted from '"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"&bull;","con":"OK","sts":"(21)","raw":0}'
2016.09.26 11:34:55 5: JSONMETER EnergieEG: ParseJsonFile.575 Handle 1 3 electricityPower 1 0 pwr
2016.09.26 11:34:55 4: JSONMETER EnergieEG: ParseJsonFile.607 Value 187 for reading electricityPower extracted from '"cnt":"5201,713","pwr":187,"lvl":103,"dev":"","det":"&bull;","con":"OK","sts":"(21)","raw":0}'
Titel: Antw:70_JSONMETER.pm PERL WARNING Meldungen
Beitrag von: tupol am 27 September 2016, 21:32:35
Das scheint aber nicht vom JSONMETER zu sein.
Titel: Antw:70_JSONMETER.pm PERL WARNING Meldungen
Beitrag von: rudolfkoenig am 28 September 2016, 07:50:35
Irgendwer legt ein $defs Eintrag ohne Namen oder weitere Eintraege an, z.Bsp mt folgender Perl Zeile:
Zitatmy $name = $defs{$undefinedVariable}{NAME};
und das faellt in FHEM erst beim BlockingCall Aufruf auf, der fhemFork aufruft. Da Schleifen ueber $defs in fhem.pl recht haeufig sind, und damit das Problem per WARNING an vielen Stellen gemeldet wird, liegt das die Vermutung nahe, dass der kaputte Eintrag in JSONMETER angelegt wurde. Sicher ist das aber nicht.
Titel: Antw:70_JSONMETER.pm PERL WARNING Meldungen
Beitrag von: tupol am 29 September 2016, 20:39:24
Sollte eigentlich nicht sein, habe aber nochmal eine Sicherheits-Abfrage eingefügt.

Bitte mal testen, ob die Meldung jetzt weg ist. Ansonsten war's jemand anderes.  :D