FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: roedert am 04 Januar 2024, 07:36:10

Titel: PERL WARNING: Argument "heating" isn't numeric in numeric eq (==) at (eval 97731
Beitrag von: roedert am 04 Januar 2024, 07:36:10
Ich bin gerade dabei mal das Log ein wenig aufzuräumen und stoße dabei immer wieder auf Perl warnings dieser Form:

PERL WARNING: Argument "heating" isn't numeric in numeric eq (==) at (eval 9773149) line 2.

Die Ursache ist klar, auch wie ich es korrigieren kann - aber wie kann ich herausfinden wo genau das herkommt?
Die selbst definierten Perl-codes werden ja per eval an Perl übergeben - gibt es eine Möglichkeit herauszufinden wer genau eval 9773149 ist?
Titel: Aw: PERL WARNING: Argument "heating" isn't numeric in numeric eq (==) at (eval 97731
Beitrag von: Otto123 am 04 Januar 2024, 11:16:30
Hi,

suche nach Definitionen mit dem Vergleich ==
suche nach Readings die heating enthalten.

Damit wirst Du die Stelle finden, wo Du ein Reading liest und es numerisch vergleichen willst, obwohl ein String drin steht.

Gruß Otto
Titel: Aw: PERL WARNING: Argument "heating" isn't numeric in numeric eq (==) at (eval 97731
Beitrag von: JoWiemann am 04 Januar 2024, 13:12:07
Hallo,

das Aktivieren von stacktrace zeigt Dir im Log von wo der Fehler kommen kann.

Grüße Jörg
Titel: Aw: PERL WARNING: Argument "heating" isn't numeric in numeric eq (==) at (eval 97731
Beitrag von: DasQ am 04 Januar 2024, 14:09:36
hatte was ähnlich geartetes auch die tage. bei mir war es der watchdog, was den batterie stand ermittel. zu problemen führte es in einer readingsgroup, in der statt die temperatur, irgend eine ersatzmeldung (batterie leer oder so)stand, die ich da eingebaut hab. ::)