[Gelöst]fhem.pl Warnung im Log

Begonnen von Tommy82, 04 Dezember 2014, 17:53:36

Vorheriges Thema - Nächstes Thema

Tommy82

Hi,
hab seit heute plötzlich diese Meldungen im Log, kann die aber noch nicht wirklich zuordnen

2015.03.27 14:11:19.184 2: Can't find string terminator '"' anywhere before EOF at (eval 23596) line 1.

2015.03.27 14:11:19.188 2: Can't find string terminator '"' anywhere before EOF at (eval 23597) line 1.

2015.03.27 14:11:19.191 2: Can't find string terminator '"' anywhere before EOF at (eval 23598) line 1.

2015.03.27 14:11:19.191 2: Can't find string terminator '"' anywhere before EOF at (eval 23599) line 1.

2015.03.27 16:40:31.598 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.


Letztes Update von fhem hab ich gestern durchgeführt
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

rudolfkoenig

Wo die ersten 4 Meldungen herkommen, kann ich nicht sagen, evtl. hilft hier ein "attr global verbose 5", um sie zu lokalisieren.
Die Warnung aus der Zeile 928 besagt, dass irgendein Modul ein fhem-Befehl ohne Inhalt (== undefined) ausfuehren wollte. Vermutlich braucht man auch hier "verbose 5", um weitere Details nennen zu koennen.

Dietmar63

Oder attr global stacktrace 1
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Tommy82

#18
Hab jetzt mal mit verbose 5 geloggt, dann bekomme ich diese Meldung:
2015.03.28 17:22:10.362 5: ENIGMA2 VU_Ultimo: called function ENIGMA2_Set()
2015.03.28 17:22:10.378 5: ENIGMA2 Uno_Schlafzimmer: called function ENIGMA2_Set()
2015.03.28 17:22:10.387 5: ENIGMA2 Uno_Kellerbar: called function ENIGMA2_Set()
2015.03.28 17:22:10.409 4: HTTP FHEMWEB:192.168.188.73:51606 GET /fhem/floorplan/Gaeste_WC1
2015.03.28 17:22:10.411 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.
2015.03.28 17:22:10.412 5: Cmd: ><
2015.03.28 17:22:10.453 2: Can't find string terminator '"' anywhere before EOF at (eval 133) line 1.

2015.03.28 17:22:10.454 2: Can't find string terminator '"' anywhere before EOF at (eval 134) line 1.

2015.03.28 17:22:10.458 2: Can't find string terminator '"' anywhere before EOF at (eval 135) line 1.

2015.03.28 17:22:10.459 2: Can't find string terminator '"' anywhere before EOF at (eval 136) line 1.

2015.03.28 17:22:10.558 4: Ignoring unknown_2D5FAB
2015.03.28 17:22:10.574 4: 6658:FHEMWEB:192.168.188.73:51606: /fhem/floorplan/Gaeste_WC1 / RL:4763 / text/html; charset=UTF-8 / Content-Encoding: gzip


Wenn ich zusätzlich stacktrace aktiviere bekomme ich noch das:

2015.03.28 17:27:35.774 4: HTTP FHEMWEB:192.168.188.73:51726 GET /fhem/floorplan/Gaeste_WC1
2015.03.28 17:27:35.776 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.
2015.03.28 17:27:35.777 3: stacktrace:
2015.03.28 17:27:35.777 3:     main::__ANON__                      called by fhem.pl (928)
2015.03.28 17:27:35.777 3:     main::AnalyzeCommand                called by ./FHEM/95_FLOORPLAN.pm (345)
2015.03.28 17:27:35.778 3:     main::FP_CGI                        called by ./FHEM/01_FHEMWEB.pm (649)
2015.03.28 17:27:35.778 3:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (424)
2015.03.28 17:27:35.778 3:     main::FW_Read                       called by fhem.pl (2963)
2015.03.28 17:27:35.778 3:     main::CallFn                        called by fhem.pl (607)
2015.03.28 17:27:35.779 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.
2015.03.28 17:27:35.779 3: stacktrace:
2015.03.28 17:27:35.779 3:     main::__ANON__                      called by fhem.pl (928)
2015.03.28 17:27:35.780 3:     main::AnalyzeCommand                called by ./FHEM/95_FLOORPLAN.pm (345)
2015.03.28 17:27:35.780 3:     main::FP_CGI                        called by ./FHEM/01_FHEMWEB.pm (649)
2015.03.28 17:27:35.780 3:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (424)
2015.03.28 17:27:35.781 3:     main::FW_Read                       called by fhem.pl (2963)
2015.03.28 17:27:35.781 3:     main::CallFn                        called by fhem.pl (607)
2015.03.28 17:27:35.781 5: Cmd: ><
2015.03.28 17:27:35.817 2: Can't find string terminator '"' anywhere before EOF at (eval 140) line 1.

2015.03.28 17:27:35.818 2: Can't find string terminator '"' anywhere before EOF at (eval 141) line 1.

2015.03.28 17:27:35.821 2: Can't find string terminator '"' anywhere before EOF at (eval 142) line 1.

2015.03.28 17:27:35.821 2: Can't find string terminator '"' anywhere before EOF at (eval 143) line 1.

2015.03.28 17:27:35.898 4: Ignoring unknown_2D5FAB
2015.03.28 17:27:35.914 4: 7544:FHEMWEB:192.168.188.73:51726: /fhem/floorplan/Gaeste_WC1 / RL:4762 / text/html; charset=UTF-8 / Content-Encoding: gzip
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

rudolfkoenig

Ich vermute ein FLOORPLAN Issue: FP_digestCGI() liefert "undef" zurueck. Das koennte der Fall sein, wenn irgendwelche Parameter cmd oder cmd.XXX heissen, und kein Argument haben. Mehr Details wuerden wir sehen, wenn du in 01_FHEMWEB $FW_formmethod temporaer von "post" auf "get" umstellst.

Dietmar63

Sieht nach einem Fehler im Umfeld floorplan GästeWC aus
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Tommy82

Zitat von: rudolfkoenig am 28 März 2015, 20:35:00
Ich vermute ein FLOORPLAN Issue: FP_digestCGI() liefert "undef" zurueck. Das koennte der Fall sein, wenn irgendwelche Parameter cmd oder cmd.XXX heissen, und kein Argument haben. Mehr Details wuerden wir sehen, wenn du in 01_FHEMWEB $FW_formmethod temporaer von "post" auf "get" umstellst.

Hab mal auf "get" umgestellt, Ausgabe ist dann
2015.03.29 11:18:48.565 4: HTTP FHEMWEB:192.168.188.73:49498 GET /fhem/floorplan/Gaeste_WC1
2015.03.29 11:18:48.568 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.
2015.03.29 11:18:48.569 3: stacktrace:
2015.03.29 11:18:48.569 3:     main::__ANON__                      called by fhem.pl (928)
2015.03.29 11:18:48.570 3:     main::AnalyzeCommand                called by ./FHEM/95_FLOORPLAN.pm (345)
2015.03.29 11:18:48.570 3:     main::FP_CGI                        called by ./FHEM/01_FHEMWEB.pm (649)
2015.03.29 11:18:48.571 3:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (424)
2015.03.29 11:18:48.571 3:     main::FW_Read                       called by fhem.pl (2963)
2015.03.29 11:18:48.572 3:     main::CallFn                        called by fhem.pl (607)
2015.03.29 11:18:48.572 1: PERL WARNING: Use of uninitialized value $cmd in substitution (s///) at fhem.pl line 928.
2015.03.29 11:18:48.573 3: stacktrace:
2015.03.29 11:18:48.573 3:     main::__ANON__                      called by fhem.pl (928)
2015.03.29 11:18:48.574 3:     main::AnalyzeCommand                called by ./FHEM/95_FLOORPLAN.pm (345)
2015.03.29 11:18:48.574 3:     main::FP_CGI                        called by ./FHEM/01_FHEMWEB.pm (649)
2015.03.29 11:18:48.575 3:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (424)
2015.03.29 11:18:48.575 3:     main::FW_Read                       called by fhem.pl (2963)
2015.03.29 11:18:48.576 3:     main::CallFn                        called by fhem.pl (607)
2015.03.29 11:18:48.576 5: Cmd: ><
2015.03.29 11:18:48.618 2: Can't find string terminator '"' anywhere before EOF at (eval 15597) line 1.

2015.03.29 11:18:48.619 2: Can't find string terminator '"' anywhere before EOF at (eval 15598) line 1.

2015.03.29 11:18:48.621 2: Can't find string terminator '"' anywhere before EOF at (eval 15599) line 1.

2015.03.29 11:18:48.622 2: Can't find string terminator '"' anywhere before EOF at (eval 15600) line 1.

2015.03.29 11:18:48.714 4: Ignoring unknown_2D5FAB
2015.03.29 11:18:48.727 4: 7544:FHEMWEB:192.168.188.73:49498: /fhem/floorplan/Gaeste_WC1 / RL:4761 / text/html; charset=UTF-8 / Content-Encoding: gzip


Ist die gleiche Ausgabe wie oben oder?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

rudolfkoenig

Ich habe jetzt auch mal ein FLOORPLAN aufgerufen, das Problem kommt bei mir auch, und hat mit
my $commands = FP_digestCgi($htmlpart[1]) if $htmlpart[1];                       # analyze URL-commands
my $FP_ret = AnalyzeCommand(undef, $commands,
                              AttrVal($FW_wname,"allowedCommands",undef)) ;        # Execute commands
zu tun: falls $htmlpart[1] nicht definiert ist, ist $commands auch nicht definiert, AnalyzeCommand wird aber aufgerufen.

Ich habe die Warnung in fhem.pl vermieden, allerdings sollte mAn die Ursache in FLOORPLAN behoben werden.

Tommy82

Hallo Rudi, danke für die Hilfe.
Ich habs mal an den FP MT geschickt
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

Hi,
hab seit gestern einen neue Warnung zur fhem.pl im Log

2015.08.04 00:00:35.203 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:00:35.246 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:00:46.592 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:00:56.710 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:01:49.607 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:02:07.382 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:02:07.430 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:02:52.613 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:02:59.878 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:03:10.477 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:03:39.556 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:03:39.599 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:03:55.627 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:04:58.632 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.
2015.08.04 00:05:06.036 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4319.


In der fhem.pl steht in Zeile  4319
Zitat$h->{DBH}->{InactiveDestroy} = 1 if($h->{TYPE} eq 'DbLog');

Die fhem.pl hat die Version
# $Id: fhem.pl 9002 2015-07-29 05:46:10Z rudolfkoenig $

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Elektrolurch

Zitat:
2015.08.04 00:05:06.036 1: PERL WARNING: Use of uninitialized value in string eq at fhem.pl line

Hat die Anzahl gleichlautender Meldungen im Log eine Bewandtnis?
configDB und Windows befreite Zone!

Tommy82

Nur um darzulegen das es davon hunderte im Log gibt.
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Elektrolurch

Ich muss mich durch die wild hinein kopierten Log-Auszüge leider per Screenreader durchquälen. Ich würde es daher begrüßen, wenn in den Posts hier nicht einfach hunderte von Zeilen lofile-Auszüge hineinkopiert würden, die keinerlei relevante Informationen enthalten.
Stattdessen könnte man ja auch schreiben:
Die folgende logzeile steht bei mir 100 x Mal....
Viel hilft nicht immer viel...


Das Einstellen der Posts dauert um so länger, je mehr Text drin ist.

Danke fürs Verständnis.

Elektrolurch
configDB und Windows befreite Zone!

rudolfkoenig

Mit der aktuellen fhem.pl kommt die gleiche Warnung nur dann oefters, wenn man "global stacktrace" gesetzt hat.
Und scheinbar wurde in diesem Fall auch noch "global verbose" auf kleiner 3 gestellt, da man sonst den stacktrace sehen wuerde. Das ist zwar alles kein Fehler oder Problem, ich finde es aber merkwuerdig.

Zum Problem: es tritt auf, wenn eine FHEM Definition kein TYPE hat. Welcher das ist, kriegt man z.Bsp. mit
{ join(",", grep { !$defs{$_}{TYPE} } keys %defs) }
raus, das Problem wurde aber hier schon oefter behandelt, es ist entweder ein Modulfehler (unwahrscheinlich), oder ein Benutzerfehler, wenn man auf %defs im eigenen sub/notify zugreift.

Tommy82

Hi,
also ich denke das ich den fehler durch ein "falsches" Löschen des Alarmanlagen moduls ausgelöst habe,
allerdings hab ich
attr global stacktrace 0 und attr global verbose 3
Von daher hätte die Warnung ja nicht öfters kommen dürfen oder!?

Aber seis drum, werde zukünft die Meldung nur einmal Posten, und dazu schreiben das sie häufiger auftriit
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI