Perl Warnings - im Log file aber keine Modul name

Begonnen von thinman, 05 Juli 2026, 18:39:59

Vorheriges Thema - Nächstes Thema

thinman

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?

JoWiemann

Hallo,

bitte im global Device das Attribut stacktrace auf 1 setzen.

Grüße Jörg

Jörg Wiemann

RPi 4 B mit 4 GByte bookworm, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM; zigbee2mqtt

ioBroker als Datenlieferant für z.B. Anker, Samsung

thinman

Vielen Dank Jörg, habe ich gemacht. Dann warte ich bis zum nächsten Eintrag im Log.

thinman

#3
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.