70_JSONMETER.pm PERL WARNING Meldungen

Begonnen von Burny4600, 27 September 2016, 09:26:57

Vorheriges Thema - Nächstes Thema

Burny4600

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}'
LG Chris

Raspberry Pi 2-5, Bullseye Lite, Bookworm Lite
Schnittstellen: 1-Wire, FHEM2FEHEM, HM-MOD-UART, LAN, Modbus, MQTT, nanoCUL, RFXtrx433E, SIGNALduino, ser2net
Devices: APC, Eastron, FS20, IT, Homematic, MQTT, PV-(DEYE, EPEVER, FRONIUS), Resol-VBUS, S.USV, TEK603, WMR200, YouLess

tupol

Das scheint aber nicht vom JSONMETER zu sein.

rudolfkoenig

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.

tupol

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