FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: willybauss am 11 April 2020, 12:55:20

Titel: [Gelöst] SVG Plot Function mit alternativen Werten - wie?
Beitrag von: willybauss am 11 April 2020, 12:55:20
Hi,
das LogFile meines Rasenroboters enthält z.B. folgende Zeilen


2020-04-09_10:00:00 Dolly mower-status: ok_cutting
2020-04-09_11:45:00 Dolly mower-status: ok_searching
2020-04-11_11:46:00 Dolly mower-status: ok_charging


Der Plot soll während "ok_cutting" eine 1 enthalten, ansonsten 0.

Da "ok_cutting" nur einmal ab Beginn des Mähens vorkommt, sehe ich im Plot nur einen schmalen vertikalen Strich um 10:00:00 Uhr, egal wie ich den Plot-Type angebe (oder übersehe ich da etwas?). Ich möchte aber, dass der Plot um 10:00:00 Uhr ("ok_cutting") auf 1 geht, und erst um 11:45:00 ("ok_searching") wieder auf 0.

Deshalb war meine Idee, im Feld "Function" eine Alternative anzugeben, also etwas in der Art

( [$fld[3]=~"ok_cutting" ODER [$fld[3]=~"ok_searching" ) ?1:0

Ich habe das u.a. so versucht:


([$fld[3]=~"ok_cutting"|[$fld[3]=~"ok_searching")?1:0


[$fld[3]=~"ok_cutting"|"ok_searching"?1:0


Bislang ohne Erfolg. ==> Wie wäre die Lösung?
Titel: Antw:SVG Plot Function mit alternativen Werten - wie?
Beitrag von: amenomade am 11 April 2020, 13:55:20
([$fld[3]=~"ok_cutting|ok_searching")?1:0
Titel: Antw:SVG Plot Function mit alternativen Werten - wie?
Beitrag von: amenomade am 11 April 2020, 13:57:40
Das attr addLog von Filelog könnte eine Alternative sein. https://fhem.de/commandref.html#FileLogattr
Titel: Antw:SVG Plot Function mit alternativen Werten - wie?
Beitrag von: rudolfkoenig am 11 April 2020, 14:10:32
Zitat([$fld[3]=~"ok_cutting"|[$fld[3]=~"ok_searching")?1:0
Das [ am Anfang ist irritierend, entweder ist es ein Copy&Paste oder ein Syntaxfehler.
Wenn ich unsicher bin, ob ein Expression funktioniert, probiere ich es direkt in der Kommandozeile aus, in der Art:
fhem> { my $f="ok_cutting";; ($f=~"ok_cutting"|$f=~"ok_searching")?1:0 }
1
fhem> { my $f="ok_searching";; ($f=~"ok_cutting"|$f=~"ok_searching")?1:0 }
1
fhem> { my $f="ok_charging";; ($f=~"ok_cutting"|$f=~"ok_searching")?1:0 }
0
Titel: Antw:SVG Plot Function mit alternativen Werten - wie?
Beitrag von: amenomade am 11 April 2020, 14:15:54
Zitat von: rudolfkoenig am 11 April 2020, 14:10:32
Das [ am Anfang ist irritierend, entweder ist es ein Copy&Paste oder ein Syntaxfehler.


jepp, übersehen.
Titel: Antw:SVG Plot Function mit alternativen Werten - wie?
Beitrag von: willybauss am 11 April 2020, 20:05:40
Hat geklappt. Besten Dank für die Hilfe.

Jetzt weiß ich auch, warum ich bei meinen Versuchen völlig erfolglos war: wenn man den Plot-Cache löscht sieht man hinterher tatsächlich auch aktuelle Ergebnisse ...  ::) ::) ::)