Hallo.
Kann man herausfinden bei welchem define da der Fehler ist? "eval xxxxxx" bedeutet was?
PERL WARNING: Argument "" isn't numeric in numeric lt (<) at (eval 8718806) line 1
Bissi mau die gelieferten Infos...
Wie wäre es denn die tatsächlichen WARN-Meldungen zu posten, also eine Kopie aus dem Log, statt "einen Auszug nachzuformulieren"?
Und wenn Logs/WARN/etc. posten, dann besser code-Tags :)
Setz doch mal das Attribut stacktrace bei global auf 1, dann bekommst du mehr Angaben zu dem WARN...
Vermutlich hast du irgendwo einen Vergleich "eingebaut", wo du einen "numerischen Vergleichsoperator" ('< > ==') nutzt, aber eine Zeichenkette vorliegt...
Gruß, Joachim
Danke für den tipp.
Ok, eines hab ich gefunden, RSS. Aber zweites?
2024.10.01 11:48:43 1: PERL WARNING: Invalid conversion in sprintf: end of string at /opt/fhem/lib/FHEM/HTTPMOD/Utils.pm line 436.
2024.10.01 11:48:43 1: stacktrace:
2024.10.01 11:48:43 1: main::__ANON__ called by /opt/fhem/lib/FHEM/HTTPMOD/Utils.pm (436)
2024.10.01 11:48:43 1: FHEM::HTTPMOD::Utils::FormatVal called by /opt/fhem/FHEM/98_Modbus.pm (2988)
2024.10.01 11:48:43 1: Modbus::CreateDataObjects called by /opt/fhem/FHEM/98_Modbus.pm (3027)
2024.10.01 11:48:43 1: Modbus::ParseDataString called by /opt/fhem/FHEM/98_Modbus.pm (2383)
2024.10.01 11:48:43 1: Modbus::HandleResponse called by /opt/fhem/FHEM/98_Modbus.pm (2040)
2024.10.01 11:48:43 1: Modbus::ReadFn called by fhem.pl (3985)
2024.10.01 11:48:43 1: main::CallFn called by fhem.pl (786)
2024.10.01 11:49:01 1: PERL WARNING: Argument "" isn't numeric in numeric lt (<) at (eval 8917178) line 1.
2024.10.01 11:49:01 1: eval: {(ReadingsVal('Strompreis_heute','07-08h','')) < (ReadingsVal('Strompreis','Durchschnitt',''))}
2024.10.01 11:49:01 1: stacktrace:
2024.10.01 11:49:01 1: main::__ANON__ called by (eval 8917178) (1)
2024.10.01 11:49:01 1: (eval) called by fhem.pl (1177)
2024.10.01 11:49:01 1: main::AnalyzePerlCommand called by /opt/fhem/FHEM/02_RSS.pm (593)
2024.10.01 11:49:01 1: main::RSS_analyzePerl called by /opt/fhem/FHEM/02_RSS.pm (667)
2024.10.01 11:49:01 1: main::RSS_evalLayout called by /opt/fhem/FHEM/02_RSS.pm (1036)
2024.10.01 11:49:01 1: (eval) called by /opt/fhem/FHEM/02_RSS.pm (930)
2024.10.01 11:49:01 1: main::RSS_returnIMG called by /opt/fhem/FHEM/02_RSS.pm (1088)
2024.10.01 11:49:01 1: main::RSS_CGI called by /opt/fhem/FHEM/01_FHEMWEB.pm (1011)
2024.10.01 11:49:01 1: main::FW_answerCall called by /opt/fhem/FHEM/01_FHEMWEB.pm (609)
2024.10.01 11:49:01 1: main::FW_Read called by fhem.pl (3985)
2024.10.01 11:49:01 1: main::CallFn called by fhem.pl (786)
Zitat von: satprofi am 01 Oktober 2024, 11:53:54Ok, eines hab ich gefunden, RSS. Aber zweites?
Das zweite kommt aus einem Modbus device. Wenn Du in dem device verbose=5 setzt, bekommst Du einen Logeintrag, der Dir den fehlerhaften Aufruf komplett zeigt.
Übrigens - zurück zu Deinem RSS: wenn man Werte aus readings numerisch auf größer oder kleiner vergleicht, sollte man besser ReadingsNum() verwenden anstatt ReadingsVal(). Daß in Deinem Vergleich einige überflüssige Klammern sind, lasse ich jetzt mal außen vor.