FHEM Forum

FHEM => Sonstiges => Thema gestartet von: Homalix99 am 25 September 2020, 12:49:47

Titel: GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: Homalix99 am 25 September 2020, 12:49:47
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
Titel: Antw:PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 475
Beitrag von: rudolfkoenig am 25 September 2020, 12:52:55
Indem Du "attr global stacktrace 1" setzt, und den Vorgang wiederholst.
Titel: Antw:PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 475
Beitrag von: Homalix99 am 25 September 2020, 13:13:21
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
Titel: Antw:PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl line 475
Beitrag von: rudolfkoenig am 25 September 2020, 13:23:25
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.
Titel: Antw:GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: Homalix99 am 25 September 2020, 13:27:24
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
Titel: Antw:GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: Homalix99 am 25 September 2020, 16:40:12
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.

Titel: Antw:GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: rudolfkoenig am 25 September 2020, 16:57:18
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?
Titel: Antw:GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: Homalix99 am 25 September 2020, 17:14:53
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
Titel: Antw:GELÖST: PERL WARNING: Use of uninitialized value $value in string eq at fhem.pl
Beitrag von: rudolfkoenig am 25 September 2020, 17:41:26
Wenn es stoert, kannst versuchen die Uebertragung auf MQTT (mit MQTT2_SERVER) umzustellen :)