Hallo zusammen,
ich habe folgende Fehlermeldung im Logfile.
2023.04.07 10:10:55 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
Ich vermute, dass dies aus einer WT-Definition kommt:
defmod FTB_notify_WT WeekdayTimer FHEM_Tablet_Battery_notify de 1234560|22:15|inactive 12345|06:20|active 1234560|{sunrise_abs(0,"00:00","23:59")}|active
Für mich ist aber 00:00 eine korrekte Uhrzeit oder?
Viele Grüße
Jürgen
Es geht doch in der Warnung gar nicht darum, ob das eine korrekte Uhrzeit ist oder nicht.
Es geht darum, dass irgendwo versucht wird, in einer numerischen Operation einen String zu verwenden.
Edit: probier mal mit
{sunrise_abs("CIVIL",0,"00:00","23:59")}
Die Änderung hat leider nichts bewirkt.
2023.04.07 13:23:57 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
Ich habe nun alle Uhrzeitangaben in den WT-Definitionen gelöscht, da diese nur wegen einem FTUI2-WT-Widget vorhanden waren. Nach dem Umstieg auf FTUI3 ist dies nicht mehr notwendig. Jetzt ist der log-Eintrag weg.
Ob eine Anpassung im Modul 99_SUNRISE_EL.pm notwendig bzw. sinnvoll ist, kann ich nicht beurteilen. Für mich ist das Thema erst einmal erledigt.
Viele Grüße und allen frohe Ostern
Jürgen
Zitat von: juemuc am 07 April 2023, 14:07:15Ob eine Anpassung im Modul 99_SUNRISE_EL.pm notwendig bzw. sinnvoll ist, kann ich nicht beurteilen.
Naja, in sunrise() alleine tritt mit den von Dir verwendeten Werten bei mir keine Warnung auf.
Und wenn ich das in Deinem ersten Beitrag hier genannten define verwende, bekomme ich auch keine Warnung im Log.
Vielleicht wäre es interessant gewesen, bei aktiviertem stacktrace herauszufinden, in welchem Aufruf die Warnung tatsächlich verursacht wird.
Hast Du dann FHEM neu gestartet?
Ich hatte die Meldung immer nur beim FHEM-Neustart bekommen.
Ich schalte in meinem Testsystem einmal stacktrace ein und berichte dann hier vom Ergebnis.
Viele Grüße
Jürgen
Hi betateilchen,
stacktrace liefert folgende Infos beim Start von FHEM:
2023.04.07 17:34:48 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
2023.04.07 17:34:48 1: eval: { my $date=1681313688;{sunrise_abs("HORIZON=-0.9","00:00","00:00")}}
2023.04.07 17:34:48 1: stacktrace:
2023.04.07 17:34:48 1: main::__ANON__ called by ./FHEM/99_SUNRISE_EL.pm (108)
2023.04.07 17:34:48 1: main::sr_alt called by ./FHEM/99_SUNRISE_EL.pm (403)
2023.04.07 17:34:48 1: main::sunrise_abs called by (eval 1270) (1)
2023.04.07 17:34:48 1: (eval) called by fhem.pl (1171)
2023.04.07 17:34:48 1: main::AnalyzePerlCommand called by ./FHEM/98_WeekdayTimer.pm (538)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_getHHMMSS called by ./FHEM/98_WeekdayTimer.pm (351)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_Profile called by ./FHEM/98_WeekdayTimer.pm (211)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::WDT_Start called by fhem.pl (3501)
2023.04.07 17:34:48 1: main::HandleTimeout called by fhem.pl (705)
2023.04.07 17:34:48 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
2023.04.07 17:34:48 1: eval: { my $date=1681227288;{sunrise_abs("HORIZON=-0.9","00:00","00:00")}}
2023.04.07 17:34:48 1: stacktrace:
2023.04.07 17:34:48 1: main::__ANON__ called by ./FHEM/99_SUNRISE_EL.pm (108)
2023.04.07 17:34:48 1: main::sr_alt called by ./FHEM/99_SUNRISE_EL.pm (403)
2023.04.07 17:34:48 1: main::sunrise_abs called by (eval 1271) (1)
2023.04.07 17:34:48 1: (eval) called by fhem.pl (1171)
2023.04.07 17:34:48 1: main::AnalyzePerlCommand called by ./FHEM/98_WeekdayTimer.pm (538)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_getHHMMSS called by ./FHEM/98_WeekdayTimer.pm (351)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_Profile called by ./FHEM/98_WeekdayTimer.pm (211)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::WDT_Start called by fhem.pl (3501)
2023.04.07 17:34:48 1: main::HandleTimeout called by fhem.pl (705)
2023.04.07 17:34:48 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
2023.04.07 17:34:48 1: eval: { my $date=1681140888;{sunrise_abs("HORIZON=-0.9","00:00","00:00")}}
2023.04.07 17:34:48 1: stacktrace:
2023.04.07 17:34:48 1: main::__ANON__ called by ./FHEM/99_SUNRISE_EL.pm (108)
2023.04.07 17:34:48 1: main::sr_alt called by ./FHEM/99_SUNRISE_EL.pm (403)
2023.04.07 17:34:48 1: main::sunrise_abs called by (eval 1272) (1)
2023.04.07 17:34:48 1: (eval) called by fhem.pl (1171)
2023.04.07 17:34:48 1: main::AnalyzePerlCommand called by ./FHEM/98_WeekdayTimer.pm (538)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_getHHMMSS called by ./FHEM/98_WeekdayTimer.pm (351)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_Profile called by ./FHEM/98_WeekdayTimer.pm (211)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::WDT_Start called by fhem.pl (3501)
2023.04.07 17:34:48 1: main::HandleTimeout called by fhem.pl (705)
2023.04.07 17:34:48 1: PERL WARNING: Argument "00:00" isn't numeric in division (/) at ./FHEM/99_SUNRISE_EL.pm line 108.
2023.04.07 17:34:48 1: eval: { my $date=1681054488;{sunrise_abs("HORIZON=-0.9","00:00","00:00")}}
2023.04.07 17:34:48 1: stacktrace:
2023.04.07 17:34:48 1: main::__ANON__ called by ./FHEM/99_SUNRISE_EL.pm (108)
2023.04.07 17:34:48 1: main::sr_alt called by ./FHEM/99_SUNRISE_EL.pm (403)
2023.04.07 17:34:48 1: main::sunrise_abs called by (eval 1273) (1)
2023.04.07 17:34:48 1: (eval) called by fhem.pl (1171)
2023.04.07 17:34:48 1: main::AnalyzePerlCommand called by ./FHEM/98_WeekdayTimer.pm (538)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_getHHMMSS called by ./FHEM/98_WeekdayTimer.pm (351)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::_Profile called by ./FHEM/98_WeekdayTimer.pm (211)
2023.04.07 17:34:48 1: FHEM::WeekdayTimer::WDT_Start called by fhem.pl (3501)
2023.04.07 17:34:48 1: main::HandleTimeout called by fhem.pl (705)
Dies ist nur ein Ausschnitt.
Viele Grüße
Jürgen
Da scheinst du auch ein Argument unterschlagen zu haben....
Danke für den Hinweis. Manchmal hilft auch keine Brille.
Die fehlerhafte Definition hat sich jetzt doch schon viele Monate gehalten ::)
Korrigiert und die PERL-Warnung ist weg. 8)
Viele Grüße
Jürgen