SVG Plot reißt ab - createGluedFile funktioniert nicht?

Begonnen von chunter1, 28 Oktober 2024, 12:49:45

Vorheriges Thema - Nächstes Thema

chunter1

Woran kann es liegen, dass meine SVG-Plots am Tag des Übergangs von einer FileLog-Datei zur nächsten in der Darstellung stets um 00:00 enden? (siehe Anhang)
createGluedFile ist in im FileLog auf "1" gesetzt - Trotzdem wird beim Übergang nur die letzte Woche dargestellt und die aktuelle ignoriert.
endPlotNow, endPlotNowByHour und endPlotToday  sind alle auf "1" gesetzt.
Die FileLog Dateien sind mit "%W" - also wöchentlich - definiert.

Du darfst diesen Dateianhang nicht ansehen.




rudolfkoenig

Liegt daran, dass createGluedFile nicht "kompatibel" mit endPlotsNow war, das habe ich jetzt gefixt.

Vielen Dank fuer den Hinweis!

Nobbynews

#2
Guten Morgen,

die Anpassung scheint Seiteneffekte (in Verbindung mit logProxy?) zu haben.
Ich habe hier mehrere SVG-devices die sich nur durch Angaben im attr fixedrange unterscheiden.
Alle zugehörigen Logs sind mit attr <device> createGluedFile 1 erzeugt.
Das führt dazu, dass nur noch das SVG für 2024 korrekt dargestellt wird und alle anderen quasi ohne Inhalt sind.
Screenshot vor/nach Update habe ich mal angehängt.
Das Attribut ist definiert als z.B.
attr Gasverbrauch_2023 fixedrange 2023-01-01 2023-12-31bzw.
attr Gasverbrauch_2024 fixedrange 2024-01-01 2024-12-31usw.
Die zugehörigen gplot-Files unterscheiden sich nur unwesentlich (zusätzlicher Plot Tagesmittel).

List SVG:
define Gasverbrauch_2024 SVG Tagesverbrauch_Gas:Gasverbrauch_2024:CURRENT
attr Gasverbrauch_2024 captionPos auto
attr Gasverbrauch_2024 fixedrange 2024-01-01 2024-12-31
attr Gasverbrauch_2024 plotReplace TL={"Jahresdurchschnitt ".sprintf("%.3f",$data{currval2})." m³/d"}
attr Gasverbrauch_2024 plotsize 1000,200
attr Gasverbrauch_2024 room 08_Heizung_Vergleich
#   DEF        Tagesverbrauch_Gas:Gasverbrauch_2024:CURRENT
#   FUUID      659265c1-f33f-8873-5a08-2f5465bb82da91a4
#   FVERSION   98_SVG.pm:0.290550/2024-08-05
#   GPLOTFILE  Gasverbrauch_2024
#   LOGDEVICE  Tagesverbrauch_Gas
#   LOGFILE    CURRENT
#   NAME       Gasverbrauch_2024
#   NR         996
#   STATE      initialized
#   TYPE       SVG
#
setstate Gasverbrauch_2024 initialized


Hier noch Plot-File:
# Created by FHEM/98_SVG.pm, 2024-10-12 11:01:05
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 y2tics
set ylabel "°C"
set y2label "m³/d"
set yrange [-10:40]
set y2range [0:15]

#lp FileLog:Tagesverbrauch_Gas:4:ESPEasy_ESP_02_Gaszaehler
#lp ConstY:$data{avg1}
#lp FileLog:VDurchschnitt_Gas:4:ESPEasy_ESP_02_Gaszaehler.VDurchschnitt
#lp FileLog:Z2_Vorne_TagesTief:4:Z2_Vorne.TagesTief
#lp FileLog:Z2_Vorne_TagesHoch:4:Z2_Vorne.TagesHoch
#lp ConstY:$data{currval1}
#lp FileLog:Tagesmitteltemperatur:4:Z2_Vorne.Tagesmittel
#lp ConstX:ConstX:logProxy_shiftTime($from,432000),-20,40

plot "<IN>" using 1:2 axes x1y2 title 'Tagesverbrauch' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Anzeigedurchschnitt' ls l3 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'VDurchschnitt' ls l1 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title '_TagesTief' ls l5fill_gyr lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title '_TagesHoch' ls l2 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Vergleich V' ls l0dot lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title '_Tagesmittel' ls l4 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title '_-365d' ls l5 lw 1 with lines

Und dann noch exemplarisch ein Log-File:
define Tagesverbrauch_Gas FileLog /Festplatte/FHEM/log/Tagesverbrauch_Gas-%Y.log ESPEasy_ESP_02_Gaszaehler:Verbrauch:.*
attr Tagesverbrauch_Gas createGluedFile 1
attr Tagesverbrauch_Gas room Log-Files->Gas
#   DEF        /Festplatte/FHEM/log/Tagesverbrauch_Gas-%Y.log ESPEasy_ESP_02_Gaszaehler:Verbrauch:.*
#   FD         79
#   FUUID      5e4d6343-f33f-8873-88be-2d75888b4eaee9f1
#   FVERSION   92_FileLog.pm:0.284510/2024-01-31
#   NAME       Tagesverbrauch_Gas
#   NOTIFYDEV  ESPEasy_ESP_02_Gaszaehler
#   NR         269
#   NTFY_ORDER 50-Tagesverbrauch_Gas
#   REGEXP     ESPEasy_ESP_02_Gaszaehler:Verbrauch:.*
#   STATE      active
#   TYPE       FileLog
#   currentlogfile /Festplatte/FHEM/log/Tagesverbrauch_Gas-2024.log
#   logfile    /Festplatte/FHEM/log/Tagesverbrauch_Gas-%Y.log
#   READINGS:
#     2024-11-02 23:59:00   linesInTheFile  307
#   pos:
#     /Festplatte/FHEM/log/Tagesverbrauch_Gas-2023.log.transit.temp.log:2023-10-31_00:00:00 19636
#     /Festplatte/FHEM/log/Tagesverbrauch_Gas-2023.log:2023-01-01 0
#     /Festplatte/FHEM/log/Tagesverbrauch_Gas-2024.log:2024-01-01 0
#
setstate Tagesverbrauch_Gas active
setstate Tagesverbrauch_Gas 2024-11-02 23:59:00 linesInTheFile 307


Norbert


buec65

Ich hatte genau das gleiche Problem.
Wenn man aber Gasverbrauch direkt ansieht sind da plötzlich die Kurven drin, ab heute sind alle Kurven auch in der Raumansicht richtig dargestellt.

chunter1

Bei mir wird jetzt zwar die ursprünglich abgeschnittene Kurve komplett dargestellt - wenn ich jedoch eine zweite Kurve hinzufüge, wird diese erst ab 00:00 dargestellt.
Beide FileLogs sind identisch eingestellt ("filename-%W.log" und createGluedFile=1).

chunter1

Ich hab jetzt die Ursache gefunden.
Grund war, dass in den wöchentlichen "...-%W.log" Files auch Daten vom Vorjahr (2023) enthalten waren.

Nobbynews

Das erklärt leider mein Problem mit attr fixedrange nicht.
Vielleicht kann mir aber auch jemand sagen, dass das Problem vor dem Bildschrim sitzt.

chunter1

Muss leider auch berichten, dass das Problem wieder aufgetreten ist :(

Off-Topic:
Mein Test-Setup mit Home Assistant gefällt mir zunehmend besser ;)
Schade, dass FHEM irgendwie feststeckt und ich nicht das Gefühl habe, dass das die Zukunft ist.

Nobbynews

Guten Morgen,

ich möchte das Thema hier noch einmal hochholen:
https://forum.fhem.de/index.php?topic=139640.msg1324245#msg1324245
Sind noch weitere Informationen erforderlich?

Norbert