[gelöst] PERL WARNING: Use of uninitialized value $20 in substitution iterator

Begonnen von Timo_FHEM, 20 November 2019, 23:14:57

Vorheriges Thema - Nächstes Thema

Timo_FHEM

Hallo zusammen,

Ich bekomme immer wieder mal eine Reihe an Log Einträgen, mit denen ich nichts anfangen kann.


2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533256) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533257) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533258) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533259) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533260) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533261) line 1.


Das geht dann lang weiter und hört irgendwann auf einfach auf.

Was kann das sein? Von welchem Device kann das ausgelöst werden?

Ist wahrscheinlich wieder irgendeine Kleinigkeit. Ich hab aber gar keinen Anhaltspunkt für eine Fehlersuche.

Kann jemand helfen?

Danke und Gruß
Timo

Gesendet von meinem MI 9 mit Tapatalk


amenomade

Zitat von: Timo_FHEM am 20 November 2019, 23:14:57
Hallo zusammen,

Ich bekomme immer wieder mal eine Reihe an Log Einträgen, mit denen ich nichts anfangen kann.


2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533256) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533257) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533258) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533259) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533260) line 1.
2019.11.20 21:25:13 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 533261) line 1.


Das geht dann lang weiter und hört irgendwann auf einfach auf.

Was kann das sein? Von welchem Device kann das ausgelöst werden?

Ist wahrscheinlich wieder irgendeine Kleinigkeit. Ich hab aber gar keinen Anhaltspunkt für eine Fehlersuche.

Kann jemand helfen?

Danke und Gruß
Timo

Gesendet von meinem MI 9 mit Tapatalk

Attribut stacktrace auf Device global setzen, und Log wieder posten
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Timo_FHEM

Danke für den Hinweis. Hab ich gesetzt. Aktuell ist noch nichts gekommen.
Ich melde mich dann wieder.

Gesendet von meinem MI 9 mit Tapatalk


Timo_FHEM

Stacktrace ist aktiviert und das Log ist brechend voll.
Nur der besagte Fehler kommt nicht drin vor.
War ja klar. Wenn man was sucht, tritt es nicht auf :-(

Gruß Timo

Timo_FHEM

So, jetzt hab ich das Problem scheinbar eingegrenzt. Hab endlich den Fehlerzustand erwischen können.
Im Log steht:

2019.12.10 21:47:36 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 1756964) line 1.
2019.12.10 21:47:36 1: stacktrace:
2019.12.10 21:47:36 1:     main::__ANON__                      called by (eval 1756964) (1)
2019.12.10 21:47:36 1:     (eval)                              called by ./FHEM/93_DbLog.pm (3320)
2019.12.10 21:47:36 1:     main::DbLog_Get                     called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (1957)
2019.12.10 21:47:36 1:     main::CommandGet                    called by fhem.pl (1238)
2019.12.10 21:47:36 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2683)
2019.12.10 21:47:36 1:     main::FW_fC                         called by ./FHEM/98_SVG.pm (1207)
2019.12.10 21:47:36 1:     main::SVG_getData                   called by ./FHEM/98_SVG.pm (1173)
2019.12.10 21:47:36 1:     main::SVG_doShowLog                 called by ./FHEM/98_SVG.pm (249)
2019.12.10 21:47:36 1:     main::SVG_FwFn                      called by ./FHEM/01_FHEMWEB.pm (2017)
2019.12.10 21:47:36 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1132)
2019.12.10 21:47:36 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (580)
2019.12.10 21:47:36 1:     main::FW_Read                       called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (750)
2019.12.10 21:47:36 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 1756965) line 1.
2019.12.10 21:47:36 1: stacktrace:
2019.12.10 21:47:36 1:     main::__ANON__                      called by (eval 1756965) (1)
2019.12.10 21:47:36 1:     (eval)                              called by ./FHEM/93_DbLog.pm (3320)
2019.12.10 21:47:36 1:     main::DbLog_Get                     called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (1957)
2019.12.10 21:47:36 1:     main::CommandGet                    called by fhem.pl (1238)
2019.12.10 21:47:36 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2683)
2019.12.10 21:47:36 1:     main::FW_fC                         called by ./FHEM/98_SVG.pm (1207)
2019.12.10 21:47:36 1:     main::SVG_getData                   called by ./FHEM/98_SVG.pm (1173)
2019.12.10 21:47:36 1:     main::SVG_doShowLog                 called by ./FHEM/98_SVG.pm (249)
2019.12.10 21:47:36 1:     main::SVG_FwFn                      called by ./FHEM/01_FHEMWEB.pm (2017)
2019.12.10 21:47:36 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1132)
2019.12.10 21:47:36 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (580)
2019.12.10 21:47:36 1:     main::FW_Read                       called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (750)
2019.12.10 21:47:36 1: PERL WARNING: Use of uninitialized value $20 in substitution iterator at (eval 1756966) line 1.
2019.12.10 21:47:36 1: stacktrace:
2019.12.10 21:47:36 1:     main::__ANON__                      called by (eval 1756966) (1)
2019.12.10 21:47:36 1:     (eval)                              called by ./FHEM/93_DbLog.pm (3320)
2019.12.10 21:47:36 1:     main::DbLog_Get                     called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (1957)
2019.12.10 21:47:36 1:     main::CommandGet                    called by fhem.pl (1238)
2019.12.10 21:47:36 1:     main::AnalyzeCommand                called by ./FHEM/01_FHEMWEB.pm (2683)
2019.12.10 21:47:36 1:     main::FW_fC                         called by ./FHEM/98_SVG.pm (1207)
2019.12.10 21:47:36 1:     main::SVG_getData                   called by ./FHEM/98_SVG.pm (1173)
2019.12.10 21:47:36 1:     main::SVG_doShowLog                 called by ./FHEM/98_SVG.pm (249)
2019.12.10 21:47:36 1:     main::SVG_FwFn                      called by ./FHEM/01_FHEMWEB.pm (2017)
2019.12.10 21:47:36 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1132)
2019.12.10 21:47:36 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (580)
2019.12.10 21:47:36 1:     main::FW_Read                       called by fhem.pl (3750)
2019.12.10 21:47:36 1:     main::CallFn                        called by fhem.pl (750)


Das tritt dann auf, wenn ich auf einen Raum "Garten" klicke. Darin ist ein Diagramm. Das werd ich mir mal genauer ansehen.
Weiter unten im Log steht dann sehr oft:

2019.12.10 21:47:37 1: PERL WARNING: Argument "" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1961.
2019.12.10 21:47:37 1: stacktrace:
2019.12.10 21:47:37 1:     main::__ANON__                      called by ./FHEM/98_SVG.pm (1961)
2019.12.10 21:47:37 1:     main::SVG_render                    called by ./FHEM/98_SVG.pm (1175)
2019.12.10 21:47:37 1:     main::SVG_doShowLog                 called by ./FHEM/98_SVG.pm (249)
2019.12.10 21:47:37 1:     main::SVG_FwFn                      called by ./FHEM/01_FHEMWEB.pm (2017)
2019.12.10 21:47:37 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1132)
2019.12.10 21:47:37 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (580)
2019.12.10 21:47:37 1:     main::FW_Read                       called by fhem.pl (3750)
2019.12.10 21:47:37 1:     main::CallFn                        called by fhem.pl (750)


Das SVG in dem Raum hat diesen Code. Da ist bestimmt das Problem zu Hause.

# Created by FHEM/98_SVG.pm, 2019-10-11 18:55:09
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title 'Zisterne'
set ytics
set y2tics ("ON" 150,"OFF" 20)
set grid ytics
set ylabel "Abstand"
set y2label ""
set yrange [0:300]
set y2range [0:300]

#DBLogging Sonoff_Zisterne:SR04_Distance
#DBLogging Sonoff_Zisterne:POWER:::$val=~s/(ON|OFF|dim)(\d*).*/$1eq"ON"?150:($1eq"OFF"?$20:20)/eg

plot "<IN>" using 1:2 axes x1y1 title 'Füllstand' ls l0 lw 1 with lines,\
     #"<IN>" using 1:2 axes x1y1 title 'Pumpe' ls l1 lw 1 with steps
"< awk '{print $1, $3~/dim.*/? 150 : 20; }' <IN>"\
using 1:2 axes x1y1 title 'Pumpe' with steps


Ich muss gestehen, bei dem SVG steh ich auf dünnem Eis. Das hab ich irgendwo zusammengeklaubt. Hatte scheinbar erstmal funktioniert.

Wenn jemand einen heißen Tipp hat, immer raus damit ;-)

Gruß Timo

amenomade

Wäre interessant, die Log von Sonoff_Zisterne zu sehen, insb. was POWER liefert

#DBLogging Sonoff_Zisterne:POWER:::$val=~s/(ON|OFF|dim)(\d*).*/$1eq"ON"?150:($1eq"OFF"?$20:20)/eg
Am Ende, ?$20:20 => Dollar weg
Meiner Meinung nach, kannst Du sogar kürzen:
$val=~s/(ON|OFF|dim)(\d*).*/$1eq"ON"?150:20/eg
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Timo_FHEM

Die Daten für das SVG kommen aus der Datenbank.
Das POWER Reading liefert die Werte ON oder OFF.

Ich hab die Zeile so angepasst:

#DBLogging Sonoff_Zisterne:POWER:::$val=~s/(ON|OFF)(\d*).*/$1eq"ON"?150:20/eg

Danach gab es kein Log Eintrag mehr. Scheinbar war es das schon. Aber ich werde das noch mal weiter beobachten.
Danke schon mal für die Hilfe :-)

Gruß Timo

Timo_FHEM

Seit 2 Tagen keinen Eintrag mehr im Log zu dem Problem.
Deine Änderung hat gewirkt.

Danke für die Hilfe!

VG Timo

Gesendet von meinem MI 9 mit Tapatalk