PERL Warning - Bitte Hilfe bei der Fehlersuche

Begonnen von Parador, 14 April 2021, 14:53:59

Vorheriges Thema - Nächstes Thema

Parador

Hallo Zusammen,

ich habe unregelmäßig PERL Warnings in meinem Logfile, denen ich noch nicht auf die Schliche gekommen bin...
Die Meldungen sehen so aus:

2021.04.14 06:12:05 1: PERL WARNING: Argument "error" isn't numeric in addition (+) at (eval 916309) line 1.
2021.04.14 06:12:05 1: PERL WARNING: Argument "error" isn't numeric in subtraction (-) at (eval 916310) line 1.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $name in substitution (s///) at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 105.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $name in exists at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 108.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $name in lc at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 109.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in exists at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 25.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in hash element at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 26.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in pattern match (m//) at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 31.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in lc at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 40.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in string eq at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 44.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in hash element at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 57.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in lc at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 58.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $find in hash element at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 77.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $name in string ne at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 114.
2021.04.14 08:00:02 1: PERL WARNING: Use of uninitialized value $name in hash element at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 118.


gerade habe ich stacktrace aktiviert und einen Neustart durchgeführt... dass hat mein Logfile dann etwas "belastet" ;-)
Hier ein Auszug:

2021.04.14 14:30:01 1: PERL WARNING: Use of uninitialized value $name in lc at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 109.
2021.04.14 14:30:01 1: stacktrace:
2021.04.14 14:30:01 1:     main::__ANON__                      called by /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm (109)
2021.04.14 14:30:01 1:     Encode::getEncoding                 called by /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm (130)
2021.04.14 14:30:01 1:     Encode::find_encoding               called by ./FHEM/98_JsonMod.pm (663)
2021.04.14 14:30:01 1:     main::JsonMod_ApiResponse           called by FHEM/HttpUtils.pm (645)
2021.04.14 14:30:01 1:     main::__ANON__                      called by fhem.pl (770)
2021.04.14 14:30:01 1: PERL WARNING: Use of uninitialized value $find in exists at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm line 25.
2021.04.14 14:30:01 1: stacktrace:
2021.04.14 14:30:01 1:     main::__ANON__                      called by /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode/Alias.pm (25)
2021.04.14 14:30:01 1:     Encode::Alias::find_alias           called by /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm (112)
2021.04.14 14:30:01 1:     Encode::getEncoding                 called by /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm (130)
2021.04.14 14:30:01 1:     Encode::find_encoding               called by ./FHEM/98_JsonMod.pm (663)
2021.04.14 14:30:01 1:     main::JsonMod_ApiResponse           called by FHEM/HttpUtils.pm (645)
2021.04.14 14:30:01 1:     main::__ANON__                      called by fhem.pl (770)


Liege ich richtig, dass zumindest die Warnings mit $name und $find in JSONMods ausgelöst werden?
Ich habe zwar einige, $name kommt auch darin vor, aber $find nicht...

Ich habe alle JSONMOD-Devices gerade nochmal mit einem "reread" gestartet, da wird kein Warning produziert...

Was kann ich noch machen um weiter einzugrenzen?


KölnSolar

ZitatLiege ich richtig, dass zumindest die Warnings mit $name und $find in JSONMods ausgelöst werden?
Damit liegst Du lt. stacktrace nicht so ganz falsch.
ZitatWas kann ich noch machen um weiter einzugrenzen?
Ich kenn JsonMod nicht, aber wenn Du so viele devices hast, würd ich versuchen es über die Zeit(interval) einzugrenzen. Oder den verbose level von device zu device erhöhen.
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt