[gelöst] SVG-Plot reißt am Monatsende trotz durchgängigem Log ab

Begonnen von Dr. Boris Neubert, 16 Juni 2026, 22:18:02

Vorheriges Thema - Nächstes Thema

Dr. Boris Neubert

Hallo,

ich habe mit AI-on-the-Edge eine Ablesung für die Wasseruhr realisiert. Mein watermeter-Device loggt durchgängig seit 17.05.2026 bis jetzt. Im Log sind 42.265 Zeilen. Wenn ich den Plot soweit herauszoome, dass ich den Monatswechsel sehe, dann bricht der Graph Ende Mai ab.

Habe ich das falsch bestellt oder wird SVG durch die Komplexität verwirrt?

Viele Grüße
Boris



define SVG_FileLog_watermeter_1 SVG FileLog_watermeter:SVG_FileLog_watermeter_1:CURRENT
attr SVG_FileLog_watermeter_1 axis_width 60
attr SVG_FileLog_watermeter_1 captionPos auto
attr SVG_FileLog_watermeter_1 endPlotNowByHour 1
attr SVG_FileLog_watermeter_1 room Gewerke->Verbrauch,Räume->0->2 Serverraum,Systeme->Plot
attr SVG_FileLog_watermeter_1 title { "Wasseruhr $data{currval1} m³" }
#   DEF        FileLog_watermeter:SVG_FileLog_watermeter_1:CURRENT
#   FUUID      6a0a1d01-f33f-4eef-b0e5-5250d6ede53ee675
#   GPLOTFILE  SVG_FileLog_watermeter_1
#   LOGDEVICE  FileLog_watermeter
#   LOGFILE    CURRENT
#   NAME       SVG_FileLog_watermeter_1
#   NR         352
#   STATE      initialized
#   TYPE       SVG
#
setstate SVG_FileLog_watermeter_1 initialized


set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid ytics
set ylabel "l"
set y2label "m³"

#FileLog_watermeter 4:watermeter.value\x3a::
#FileLog_watermeter 4:watermeter.valueLiters\x3a::delta-h
#FileLog_watermeter 4:watermeter.valueLiters\x3a::delta-d
#FileLog_watermeter 4:watermeter.deltaLiters\x3a::

plot "<IN>" using 1:2 axes x1y2 title 'Zählerstand' ls l0 lw 2 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Verbrauch / h' ls l2fill lw 0.2 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Verbrauch / d' ls l2 lw 3 with histeps,\
     "<IN>" using 1:2 axes x1y1 title 'Verbrauch' ls l8fill lw 1 with fsteps
root@has-1:/opt/fhem/www/gplot#
FHEM-Developer seit 2007, Mitgründer und Förder-Mitglied des FHEM e.V.
Bitte keine unaufgeforderten privaten Nachrichten!

rudolfkoenig

Ich rate: FileLog_watermeter schreibt die Dateien Monatsweise.
In diesem Fall kann "attr FileLog_watermeter createGluedFile 1" helfen.

Dr. Boris Neubert

Ich war nicht deutlich genug. Das FileLog loggt jahresweise. Ich habe eine Datei.

list FileLog_watermeter
Internals:
   DEF        ./log/watermeter-%Y.log watermeter:deltaLiters:.*|watermeter:value:.*|watermeter:valueLiters:.*
   FD         90
   FUUID      6a08b189-f33f-4eef-d2a1-28f6503ebd2b73f4
   NAME       FileLog_watermeter
   NOTIFYDEV  watermeter
   NR         350
   NTFY_ORDER 50-FileLog_watermeter
   REGEXP     watermeter:deltaLiters:.*|watermeter:value:.*|watermeter:valueLiters:.*
   STATE      active
   TYPE       FileLog
   currentlogfile ./log/watermeter-2026.log
   logfile    ./log/watermeter-%Y.log
   READINGS:
     2026-06-17 19:21:39   linesInTheFile  85307
Attributes:
   createGluedFile 1
   logtype    text
   room       Systeme->Log

FHEM-Developer seit 2007, Mitgründer und Förder-Mitglied des FHEM e.V.
Bitte keine unaufgeforderten privaten Nachrichten!

rudolfkoenig

Ich vermute in der Datei Zeilen, die nicht mit einem Zeitstempel beginnen, oder der Zeitstempel steigt nicht monoton.
Wenn weder/noch, dann schick mir die Datei bitte zu.

Dr. Boris Neubert

Ausgezeichneter Spürsinn!

Die Datei enthielt eine Zeile, die mit 2026-2026- begann. Und zwar just am Monatsultimo. Korrektur des Zeitstempels führt zum erwarteten Ergebnis.

Grep sei Dank!

grep -v -P '^2026-0\d' watermeter-2026.log
Und Rudi auch.
FHEM-Developer seit 2007, Mitgründer und Förder-Mitglied des FHEM e.V.
Bitte keine unaufgeforderten privaten Nachrichten!