Readings in verschiedene Log-Dateien aufsplitten: Unterschied zwischen den Versionen
Rohan (Diskussion | Beiträge) K (Link zur commandref, statistics-Modul, eingefügt) |
Keine Bearbeitungszusammenfassung |
||
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Aus verschiedenen Gründen kann es wünschenswert sein, die Readings eines | Aus verschiedenen Gründen kann es wünschenswert sein, die Readings eines FHEM-Devices in unterschiedliche Log-Dateien aufzuteilen. Dies kann man auch verwenden, um bestimmte Werte (Readings) '''nicht''' zu loggen. | ||
Gegeben ist hier als Beispiel folgender Log-Dateiinhalt: | Gegeben ist hier als Beispiel folgender Log-Dateiinhalt: | ||
Zeile 30: | Zeile 30: | ||
2014-12-09_11:16:32 DS2423_1 gaspower_B: 0 | 2014-12-09_11:16:32 DS2423_1 gaspower_B: 0 | ||
Zum Hintergrund: Es handelt sich um einen per 1-Wire angeschlossenen DS2423-Zählers (zweifach), der die S0-Signale eines Gas- und eines Drehstromzählers mitzählt und deren Werte | Zum Hintergrund: Es handelt sich um einen per 1-Wire angeschlossenen DS2423-Zählers (zweifach), der die S0-Signale eines Gas- und eines Drehstromzählers mitzählt und deren Werte FHEM-intern in die entsprechenden Werte umgerechnet werden sowie um die Ausgabe des auf diese Werte angesetzten [http://fhem.de/commandref_DE.html#statistics Statistik-Moduls] von FHEM (alle Zeilen, die die Zeichenkette "stat" enthalten). | ||
Geloggt wurden diese Werte (Readings) bisher mittels folgender Definitionen in einer | Geloggt wurden diese Werte (Readings) bisher mittels folgender Definitionen in einer FHEM-CFG-Datei: | ||
define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1 | define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1 | ||
Zeile 39: | Zeile 39: | ||
# Basis-Readings des Device | # Basis-Readings des Device | ||
define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1:(!statEnergy).* | define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1:(?!statEnergy).* | ||
Hierdurch werden alle Readings, die '''nicht''' die Zeichenkette "statEnergy" enthalten (also die Basiswerte), in die angegebene Datei ''DS2423_1-%Y-%m.log'' geschrieben. Wichtig ist das "!", welches die Bedingung negiert. | Hierdurch werden alle Readings, die '''nicht''' die Zeichenkette "statEnergy" enthalten (also die Basiswerte), in die angegebene Datei ''DS2423_1-%Y-%m.log'' geschrieben. Wichtig ist das "!", welches die Bedingung negiert. | ||
Zeile 49: | Zeile 49: | ||
werden die Readings, welche die Zeichenkette "statEnergy" enthalten, in die Log-Datei ''DS2423_1'''_Stat'''-%Y-%m.log'' geschrieben. | werden die Readings, welche die Zeichenkette "statEnergy" enthalten, in die Log-Datei ''DS2423_1'''_Stat'''-%Y-%m.log'' geschrieben. | ||
[[Kategorie:HOWTOS]] | |||
[[Kategorie:Logging]] |
Aktuelle Version vom 30. Juli 2019, 08:34 Uhr
Aus verschiedenen Gründen kann es wünschenswert sein, die Readings eines FHEM-Devices in unterschiedliche Log-Dateien aufzuteilen. Dies kann man auch verwenden, um bestimmte Werte (Readings) nicht zu loggen.
Gegeben ist hier als Beispiel folgender Log-Dateiinhalt:
2014-12-09_11:12:32 DS2423_1 gaspower_B: 0 2014-12-09_11:12:32 DS2423_1 energy_A: 8148.093 2014-12-09_11:12:32 DS2423_1 power_A: 0.600743655234849 2014-12-09_11:12:32 DS2423_1 statEnergy_A: Hour: 0.068 Day: 3.570 Month: 102.140 Year: 102.140 (since: 2014-12-02 ) 2014-12-09_11:12:32 DS2423_1 statEnergy_AHour: 0.068 2014-12-09_11:12:32 DS2423_1 statEnergy_ADay: 3.570 2014-12-09_11:12:32 DS2423_1 statEnergy_AMonth: 102.140 2014-12-09_11:12:32 DS2423_1 statEnergy_AYear: 102.140 2014-12-09_11:12:32 DS2423_1 energy_A: 8148.093 2014-12-09_11:12:32 DS2423_1 gasenergy_B: 536.9 2014-12-09_11:14:32 DS2423_1 counters.A: 8148103 2014-12-09_11:14:32 DS2423_1 counters.B: 5369 2014-12-09_11:14:32 DS2423_1 energy_A: 8148.103 2014-12-09_11:14:32 DS2423_1 power_A: 0.601512186542027 2014-12-09_11:14:32 DS2423_1 gaspower_B: 0 2014-12-09_11:14:32 DS2423_1 gasenergy_B: 536.9 2014-12-09_11:14:32 DS2423_1 statEnergy_A: Hour: 0.078 Day: 3.580 Month: 102.150 Year: 102.150 (since: 2014-12-02 ) 2014-12-09_11:14:32 DS2423_1 statEnergy_AHour: 0.078 2014-12-09_11:14:32 DS2423_1 statEnergy_ADay: 3.580 2014-12-09_11:14:32 DS2423_1 statEnergy_AMonth: 102.150 2014-12-09_11:14:32 DS2423_1 statEnergy_AYear: 102.150 2014-12-09_11:14:32 DS2423_1 energy_A: 8148.103 2014-12-09_11:14:32 DS2423_1 gasenergy_B: 536.9 2014-12-09_11:16:32 DS2423_1 counters.A: 8148113 2014-12-09_11:16:32 DS2423_1 counters.B: 5369 2014-12-09_11:16:32 DS2423_1 gaspower_B: 0
Zum Hintergrund: Es handelt sich um einen per 1-Wire angeschlossenen DS2423-Zählers (zweifach), der die S0-Signale eines Gas- und eines Drehstromzählers mitzählt und deren Werte FHEM-intern in die entsprechenden Werte umgerechnet werden sowie um die Ausgabe des auf diese Werte angesetzten Statistik-Moduls von FHEM (alle Zeilen, die die Zeichenkette "stat" enthalten).
Geloggt wurden diese Werte (Readings) bisher mittels folgender Definitionen in einer FHEM-CFG-Datei:
define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1
Nun sollen die Zeilen mit "stat..." und die anderen (also ohne "stat...") in getrennte Log-Dateien geschrieben werden. Dazu braucht es folgende Defintionen:
# Basis-Readings des Device define FileLog_DS2423_1 FileLog /opt/fhem/log/DS2423_1-%Y-%m.log DS2423_1:(?!statEnergy).*
Hierdurch werden alle Readings, die nicht die Zeichenkette "statEnergy" enthalten (also die Basiswerte), in die angegebene Datei DS2423_1-%Y-%m.log geschrieben. Wichtig ist das "!", welches die Bedingung negiert.
Mittels
# Logfile für Werte des Statistik-Moduls zum DS2423_1 define FileLog_DS2423_1_Stat FileLog /opt/fhem/log/DS2423_1_Stat-%Y-%m.log DS2423_1:(statEnergy).*
werden die Readings, welche die Zeichenkette "statEnergy" enthalten, in die Log-Datei DS2423_1_Stat-%Y-%m.log geschrieben.