Log File: PERL WARNING: Use of uninitialized value $fld[3] in pattern match

Begonnen von m8haben, 21 Oktober 2016, 17:47:40

Vorheriges Thema - Nächstes Thema

m8haben

Ich frage den Status meiner Heizung ab und bekomme immer das Log File mit folgenden Warnungen zugemüllt.
PERL WARNING: Use of uninitialized value $fld[3] in pattern match

2016.10.16 20:14:29 1: PERL WARNING: Use of uninitialized value $fld[3] in pattern match (m//) at (eval 3256) line 1, <GEN161> line 12690.
2016.10.16 20:14:29 3: eval: $fld[3]=~"heat"?1:$fld[3]=~"water"?2:0
2016.10.16 20:14:29 1: PERL WARNING: Use of uninitialized value $fld[3] in pattern match (m//) at (eval 3257) line 1, <GEN161> line 12722.
2016.10.16 20:14:29 3: eval: $fld[3]=~"heat"?1:$fld[3]=~"water"?2:0
2016.10.16 20:14:29 1: PERL WARNING: Use of uninitialized value $fld[3] in pattern match (m//) at (eval 3258) line 1, <GEN161> line 12754.
2016.10.16 20:14:29 3: eval: $fld[3]=~"heat"?1:$fld[3]=~"water"?2:0
2016.10.16 20:14:29 1: PERL WARNING: Use of uninitialized value $fld[3] in pattern match (m//) at (eval 3259) line 1, <GEN161> line 12786.
2016.10.16 20:14:29 3: eval: $fld[3]=~"heat"?1:$fld[3]=~"water"?2:0
2016.10.16 20:14:29 1: PERL WARNING: Use of uninitialized value $fld[3] in pattern match (m//) at (eval 3260) line 1, <GEN161> line 12818.
2016.10.16 20:14:29 3: eval: $fld[3]=~"heat"?1:$fld[3]=~"water"?2:0

Wie bekommen ich die Warnungen weg. Bitte für einen nicht IT-Spezialisten antworten.  :)

Danke Roland
Rpi 2, Fhem, ebus (Vaillant), ECMD

DeeSPe

MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

rudolfkoenig

@m8haben:
1. .gplot Datei passt nicht zur Fehlermeldung, deswegen kann ich die Frage nicht beantworten.
2. Die Leerzeilen in der Logdatei verwirren die binaere Suche, die die erste relevante Zeile sucht. Bitte unbedingt vermeiden!

@DeeSPe:
1. nein, muss nicht  :), in der SVG-Plot hat sich die gezeigte Schreibweise eingebuergert. Achtung: Leerzeichen sind hier nicht erlaubt!
2. Die Meldung hat ja auch nicht mit der Schreibweise ein Problem, sondern mit dem nicht gefuellten $fld[3], also die fehlende 4. Spalte in der Datei.