Hallo,
ich habe seit geraumer Zeit diese Warning im fhem log:
PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4753, <GEN57558> line 1817
Es geht um readingsBulkUpdateIfChanged() laut main.pl
Wie kann ich ermitteln, wo der Übeltäter steckt?
Vielen Danke im voraus
Gruß
Alex
Indem Du "attr global stacktrace 1" setzt, und den Vorgang wiederholst.
voila:
2020.09.25 13:11:38.647 1: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4753.
2020.09.25 13:11:38.648 1: stacktrace:
2020.09.25 13:11:38.648 1: main::__ANON__ called by fhem.pl (4753)
2020.09.25 13:11:38.649 1: main::readingsBulkUpdateIfChanged called by ./FHEM/36_Shelly.pm (894)
2020.09.25 13:11:38.649 1: main::Shelly_status called by ./FHEM/36_Shelly.pm (848)
2020.09.25 13:11:38.649 1: main::__ANON__ called by FHEM/HttpUtils.pm (634)
2020.09.25 13:11:38.650 1: main::__ANON__ called by fhem.pl (751)
Das Shelly Modul, aha
Danke!
Gruß
Alex
So klar ist das nicht, es klingt fuer mich eher nach einem userReading, was von einem Shelly-Event getriggert wurde.
Da aber die Zeilenangaben nicht zum aktuellen fhem.pl passen, kann das auch ein Irrtum sein.
Zu diesem Objekt sind keine weiteren Readings, etc. definiert, bzw andere Module wie at, notify, etc. . mit diesem verküpft.
Siehe list des Objekts:
Internals:
.AttrList
CHANGED
DEF 192.168.3.60
DURATION 0
FUUID 5f3281f9-f33f-5615-55df-3a0b529bd742fd17
INTERVAL 60
NAME Shelly_DG_Bad
NR 1740
STATE off
TCPIP 192.168.3.60
TYPE Shelly
.attraggr:
.attrminint:
READINGS:
2020-08-11 13:33:14 cloud disabled
2020-09-19 13:48:31 firmware 1047-long-id-for-shelly-devices
2020-09-22 08:01:39 network <html>connected to <a href="http://192.168.3.60">192.168.3.60</a></html>
2020-09-25 07:09:11 relay off
2020-09-25 07:09:11 state off
Attributes:
group Licht
model shelly1
room DG_Nord
Hallo Rudi,
anbei ein neues Log nachdem ich ein fhem update gemacht hatte.
2020.09.25 16:37:09.610 1: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4824.
2020.09.25 16:37:09.611 1: stacktrace:
2020.09.25 16:37:09.612 1: main::__ANON__ called by fhem.pl (4824)
2020.09.25 16:37:09.612 1: main::readingsBulkUpdateIfChanged called by ./FHEM/36_Shelly.pm (925)
2020.09.25 16:37:09.613 1: main::Shelly_status called by ./FHEM/36_Shelly.pm (879)
2020.09.25 16:37:09.613 1: main::__ANON__ called by FHEM/HttpUtils.pm (634)
2020.09.25 16:37:09.613 1: main::__ANON__ called by fhem.pl (760)
Frage: was bedeutet eigentlich das <GEN11> im Log ???
2020.09.25 16:36:09.540 1: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4824, <GEN11> line 88.
Das Problem kommt wirklich vom Modul, es versucht ein Reading auf einem undefinierten Wert zu setzen.
ZitatFrage: was bedeutet eigentlich das <GEN11> im Log ???
Weiss nicht. Wird vom perl generiert, bei mir steht beim gleichen Aufruf
PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 4824.
Ich habe es mit perl 5.26 und 5.32 getestet. Welche perl Version hast Du?
Hallo Rudi,
also das Modul versucht das nicht vorhandene Reading "overpower" zu aktialisieren. Habe dazu einen neuen Thead ins Forum gestellt.
Ich habe die Perl Version:
> perl --version
This is perl 5, version 24, subversion 1 (v5.24.1) built for arm-linux-gnueabihf-thread-multi-64int
(with 85 registered patches, see perl -V for more detail)
VG
Alex
Wenn es stoert, kannst versuchen die Uebertragung auf MQTT (mit MQTT2_SERVER) umzustellen :)