[gelöst] Frage zu gplot, Unterschied DbLog und FileLog

Begonnen von franky08, 04 Februar 2014, 18:52:58

Vorheriges Thema - Nächstes Thema

franky08

Hallo, ich versuche schon einige Zeit warum regexp im FileLog funktioniert aber mit DbLog nicht.
Im FileLog:
#FileLog 3:Schalter_Wohnungstuer.*:0:$fld[2]=~"on"?1:0

funktioniert.

Im DbLog:
#DbLog 3:Schalter_Wohnungstuer.*:0:$fld[2]=~"on"?1:0

Dabei ist es egal ob ich auf "on" oder "open" prüfe, mit FileLog geht es, mit DbLog nicht. Egal wie ich regexp versuche anzupassen.
Die funktionierende gplot Datei (mit FileLog):
# Created by FHEM/98_SVG.pm, 2013-11-14 19:09:32
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> <L1>'
set ytics ("closed" 0, "open" 1)
set y2tics ("closed" 0, "open" 1)
set grid
set ylabel "Status"
set y2label "Status"
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

#FileLog 3:Schalter_Wohnungstuer.*:0:$fld[2]=~"on"?1:0

plot "<IN>" using 1:2 axes x1y2 notitle ls l0 lw 1 with steps

Habe in der letzten Zeit 17 Plots von FileLog auf DbLog problemlos umstellen können aber an dem Schalter kapituliere ich langsam.

Wo liegt mein Denkfehler?

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Puschel74

Hallo,

da meine GPlot auch dim abfängt (dank andre) sieht die GPLOT bei mir so aus:

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 '<L1>'

set ytics ("Aus" 0, "Ein" 1)
set y2tics ("Aus" 0, "Ein" 1)
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]
set ylabel "Status"
set y2label "Status"

#DbLog <SPEC1>:state:::$val=~s/(Ein|Aus|dim)(\d*).*/$1eq"Ein"?1:($1eq"dim"?$2*0.01:0)/eg

plot "< awk '{print $1, $3~/dim.*/? 1 : 0; }' <IN>"\
        using 1:2 notitle with steps


Ich mappe aber on/off auf Ein/Aus.

Hoffe das hilft dir weiter.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

franky08

Das war der Tip, funktioniert auf Anhieb. Die regexp, da wäre ich mit meinen bescheidenen Perl Kenntnissen nie drauf gekommen, wie es gefiltert werden muss.
Die gplot Datei hat jetzt auch den Namen puschel2.gplot  ;)

Danke, ich sitze seit 2 Wochen daran und hatte den einen Sensor schon wieder auf FileLog umgestellt.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Puschel74

Hallo,

ZitatDie gplot Datei hat jetzt auch den Namen puschel2.gplot
Das ehrt mich aber ich will mich keinesfalls mit fremden Federn schmücken.

ZitatDie regexp, da wäre ich mit meinen bescheidenen Perl Kenntnissen nie drauf gekommen, wie es gefiltert werden muss.
Denkst du ich?
Mir hat andre dabei geholfen - und mir einiges beigebracht was regexp anbelangt.

Also wenn dann sollte die Datei andre.gplot heissen  ;D
Wobei ich sie einfach nur fs20db.gplot benannt habe  8)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

franky08

#4
Ich nochmal, obwohl die gplot funktioniert, bringt das Log jetzt jede Menge Fehler in der Art:
2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7838) line 1, at EOF

2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7839) line 1, at EOF

2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7840) line 1, at EOF

2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7841) line 1, at EOF

2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7842) line 1, at EOF

2014.02.04 21:03:51 3: DbLog: Error in inline function: <$val=~s/(open|closed)(\d*).*/$1eq"open"?1:/eg>, Error: syntax error at (eval 7843) line 1, at EOF



regexp:
#DbLog <SPEC1>:state:::$val=~s/(open|closed|dim)(\d*).*/$1eq"open"?1:($1eq"dim"?$2*0.01:0)/eg

plot "< awk '{print $1, $3~/dim.*/? 1 : 0; }' <IN>"\
        using 1:2 notitle with steps


Hast du eine Idee?
Gruß Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Puschel74

Hallo,

ähem - sorry da hab ich keine Idee.
update mal ausgeführt?
Ich hab keine Fehler im Log.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

franky08

Mach ich morgen. Mal sehen, was da los ist.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

franky08

@Puschel74
Nachdem ich gestern Abend Debian komplett neu gestartet habe, sind die Fehlermeldungen im Log weg! Hätte wahrscheinlich auch gereicht fhem mit einem shutdown restart mal neu zu starten.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1