FHEM Forum

FHEM => Sonstiges => Thema gestartet von: thinman am 05 Juli 2026, 18:39:59

Titel: Perl Warnings - im Log file aber keine Modul name
Beitrag von: thinman am 05 Juli 2026, 18:39:59
Hi! Seit ich mein FHEM wegen eine Hardware Crash neu (vom Backup) aufsetzen musste, sehe ich im Log file massenweise folgende Einträge:

2026.07.05 18:33:17 1: PERL WARNING: substr outside of string at (eval 24470) line 1.
2026.07.05 18:33:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at (eval 24470) line 1.

Aber es fehlt in welchen Modul diese Fehler drin sind. Wie kann ich das rausfinden?
Titel: Aw: Perl Warnings - im Log file aber keine Modul name
Beitrag von: JoWiemann am 05 Juli 2026, 18:44:34
Hallo,

bitte im global Device das Attribut stacktrace auf 1 setzen.

Grüße Jörg

Titel: Aw: Perl Warnings - im Log file aber keine Modul name
Beitrag von: thinman am 05 Juli 2026, 19:45:08
Vielen Dank Jörg, habe ich gemacht. Dann warte ich bis zum nächsten Eintrag im Log.
Titel: Aw: Perl Warnings - im Log file aber keine Modul name
Beitrag von: thinman am 05 Juli 2026, 19:53:08
Welche . ist in dem script falsch?
2026.07.05 19:44:02 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at (eval 26736) line 1.
2026.07.05 19:44:02 1: eval: ReadingsVal('ESPEasy_Sonoff_Vitrine_Sonoff_TempSensor','Temperature','')."(194)(176)C - ".ReadingsVal('ESPEasy_Sonoff_Vitrine_Sonoff_TempSensor','Humidity','')."% - ".substr(ReadingsTimestamp('ESPEasy_Sonoff_Vitrine_Sonoff_TempSensor','Humidity',''),11,8)
2026.07.05 19:44:02 1: stacktrace:
2026.07.05 19:44:02 1:    main::__ANON__                      called by (eval 26736) (1)
2026.07.05 19:44:02 1:    (eval)                              called by fhem.pl (4921)
2026.07.05 19:44:02 1:    main::evalStateFormat              called by fhem.pl (5032)
2026.07.05 19:44:02 1:    main::readingsEndUpdate            called by fhem.pl (5223)
2026.07.05 19:44:02 1:    main::readingsSingleUpdate          called by /opt/fhem/FHEM/34_ESPEasy.pm (2726)
2026.07.05 19:44:02 1:    main::ESPEasy_setState              called by /opt/fhem/FHEM/34_ESPEasy.pm (2250)
2026.07.05 19:44:02 1:    main::ESPEasy_statusRequest        called by fhem.pl (3528)
2026.07.05 19:44:02 1:    main::HandleTimeout                called by fhem.pl (710)
(Ich kenne mich mit Perl leider nicht gut genug aus.)

EDIT: ich sehe jetzt, dass das Gerät auf Absent steht. Das wird wohl der Fehler sein, weil es dadurch die Auswertung dieses StateFormat wahrscheinlich keinen Sinn macht.