Mehrere logs in einem Plot - Altes

Begonnen von jove01, 09 Dezember 2013, 11:45:23

Vorheriges Thema - Nächstes Thema

jove01

Hallo
ich beziehe mich auf ein altes Thema (ursprünglich Google Groups). Dort wird beschrieben, wie man verschiedene Geräte (Logs) in einem Plot anzeigen kann.
# Log definieren und zuweisen zum Plotfile "heizung.gplot":

define Sensoren FileLog /var/log/fhem/Sensoren-%Y.log AT:T:.*|WZ:T:.*|
VL:T:.*|FBH:T:.*|RL:T:.*|SOL:T:.*|Speicher:T:.*
attr Sensoren logtype heizung,text
attr Sensoren room Logs

Angepasst auf meine Geräte und Namen sieht die Stelle bei mir so aus:

##   Gerät TX29-IT
#    WZ_Temp_All
#    FileLog fuer 3 WZ_Temp
define FileLog_WZ_Temp_All FileLog ./log/WZ_Temp_All-%Y.log WZ_Temp_01:temperature:.*|WZ_Temp_02:temperature:.*|WZ_Temp_03:temperature:.*|Aussen_Temp_01:temperature:.*|
attr FileLog_WZ_Temp_All  logtype text
attr FileLog_WZ_Temp_All  room Logs

#   SVG
define SVG_Temp_Wohnzimmer weblink fileplot FileLog_WZ_Temp_All:SVG_WZ_Temp_All:CURRENT
attr SVG_Temp_Wohnzimmer label "Wohnzimmer Temperaturen"
attr SVG_Temp_Wohnzimmer room Plots
attr SVG_Temp_Wohnzimmer plotsize 800,300

Das funktioniert auch alles prima. Vielen Dank dafür!
Aber, und das ist meine Frage: Wieso bekomme ich in der neuen Log-Datei alle möglichen Meldungen von allen Geräten ?

2013-12-09_11:37:43 Chr_Fenster Window: Closed
2013-12-09_11:38:05 WZ_Temp_01 temperature: 21.6
2013-12-09_11:38:10 AZ_Temp_01 T: 8.4
2013-12-09_11:38:14 AZ_Temp_01 temperature: 8.4
2013-12-09_11:38:20 WZ_Temp_02 temperature: 21.6
2013-12-09_11:38:21 Chr_FHT actuator: 0%
2013-12-09_11:38:23 WZ_Temp_03 temperature: 21.9
2013-12-09_11:38:40 Aussen_Temp_01 temperature: 19.7
2013-12-09_11:40:16 Chr_FHT actuator: 0%
2013-12-09_11:41:09 AZ_Temp_01 T: 8.3

Ich habe das Coding oben so verstanden, dass nur die definierten Ereignisse neu zusammengefasst werden.

Ich hoffe, mir kann ein Tip bzw. Info gegeben werden
Danke
Jürgen
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung

rudolfkoenig

Das Problem entsteht durch den letzten |. Dieses Symbol bedeutet oder, bzw. wenn nichts danach kommt, dann "oder Nichts", was ueberall passt, weil jeder String aus dem eigentlichen String+Nichts besteht.

Da FileLog (und notify, usw) den regexp automatisch mit ^$ erweitern (zu ^regexp$), sollte man bei Ausdrucken mit | alles in () einschliessen.

-> Loesung: letzten | entfernen und alles in () einschliessen.

Wenn man eventTypes definiert hat (kommt automatisch, wenn man 5.5 installiert hat, muss manuell nachgezogen werden, wenn man update durchfuehrt), dann kann man solche Aufgaben im FileLog Detailansicht per Dropdown&Button durchfuehren.

jove01

Super, danke
Jetzt sehe ich auch, das mein kopieren und anpassen fehlerhaft war.  Ich probier das dann auch sofort mit ().
Nur das mit den eventTypes habe ich noch nicht verstanden. Muss ich noch ein wenig forschen.
Jürgen
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung