Wie kann man logfiles zusammenfassen?

Begonnen von Gisbert, 19 Februar 2016, 23:56:18

Vorheriges Thema - Nächstes Thema

Gisbert

Hallo,

wie kann man Daten aus verschieden Readings zusammenfassen?

Bei Dieselpreisen, die ich über die Seite www.clever-tanken.de in Fhem abfrage, wird für jede abgefragte Tankstelle ein Eintrag in Fhem erzeugt und unter Readings der aktuelle Literpreis angezeigt.
Über 6 Tankstellen wird dann ein logfile erstellt, aus dem widerum ein Diagramm erzeugt wird.
Folgende Definition des logfiles funktioniert bei mir:

define FileLog_Dieselpreise FileLog ./log/Dieselpreise-%Y-%m.log (AviaExpress.XXX|bft.YYY|bft.ZZZ|Jet.AAA|Jet.BBB|Star.CCC):(Diesel).*
attr FileLog_Dieselpreise logtype text


Etwas ähnliches wollte ich bei dem Modul PRESENCE für Smarphones machen, d.h. ich möchte gerne einen logfile haben und nicht viele.
Hier wird in den Readings bei state "present" oder "absent" eingetragen, je nachdem, ob ein Smartphone im entsprechenden WLAN eingebucht ist oder nicht.

Ein zu obigem Code analoges Vorgehen funktioniert hier nicht:
define FileLog_Smartphone FileLog ./log/Smartphone-%Y-%m.log (Phone1|Phone2|Phone3|Phone4):(state).*
attr FileLog_Smartphone logtype text


Auch dieser Code funktioniert nicht:
define FileLog_Smartphone FileLog ./log/Smartphone-%Y-%m.log (Phone1:.*(state))|(Phone2:.*(state))|(Phone3:.*(state))|(Phone4:.*(state)):.*
attr FileLog_Smartphone logtype text


Gibt es etwas, was ich übersehen habe?
Muss vorher "Smartphone" definiert sein?
Das ist im vorliegenden Fall nicht so.

Viele Grüße
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

justme1968

schau dir im event monitor dir events an die erzeugt werden. dann wirst du sehen das bei state der reading name nicht mit auftaucht.

lass den :(state).* teil einfach weg oder schreib statt dessen (present|absent)

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Gisbert

#2
Hallo Andre,

vielen Dank!

Nur zur Vollständigkeit, was dann funktioniert hat, ist folgendes (ein Doppelpunkt vor (present|absent) ist notwendig):
define FileLog_Smartphone FileLog ./log/Smartphone-%Y-%m.log (Phone1|Phone2|Phone3|Phone4):(present|absent)
attr FileLog_Smartphone logtype text


Ich hab mir den Event monitor angeschaut, da wurden aber keine Einträge reingeschrieben, auch nicht wenn verbose = 5 gesetzt wurde.
Ich hab das Wlan meines Handys mehrmals an und ausgeschaltet, was jetzt zu den gewünschten Einträgen im logfile führt, aber im Event monitor war nichts zu sehen.
Den Event monitor hab ich bisher noch nie benutzt; ich hab mir bisher immer den Fhem Logfile angeschaut, ob da Fehlermeldungen oder Hinweise enthalten sind.
Gibt es Einstellungen in der fhem.cfg, die man berücksichtigen muss?

Nochmals vielen Dank
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome