FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: wowogiengen am 09 Oktober 2020, 10:54:48

Titel: DBLog, falsche RegExp?
Beitrag von: wowogiengen am 09 Oktober 2020, 10:54:48
Hallo,
ich habe mein DBLog wie hier https://forum.fhem.de/index.php?topic=114815.msg1090321#msg1090321 (https://forum.fhem.de/index.php?topic=114815.msg1090321#msg1090321) beschrieben wie folgt definiert:

defmod mySQLDB DbLog ./mySQLDB.conf Rolladen.*:pct|HzgThermostat.*:batteryLevel|HzgThermostat.*:desired-temp|HzgThermostat.*:measured-temp|HzgStatus.*:humidity|HzgAktor.*:level|HzgAktor.*:pct|HzgAktor.*:state|HzgHC.*:*.perDay\

attr mySQLDB .* 1
attr mySQLDB DbLogType Current/History
attr mySQLDB asyncMode 1
attr mySQLDB bulkInsert 1
attr mySQLDB cacheLimit 500
attr mySQLDB event-on-change-reading CacheUsage
attr mySQLDB room DbLog,LogFiles,System
attr mySQLDB showNotifyTime 0
attr mySQLDB showproctime 1
attr mySQLDB syncInterval 120
attr mySQLDB verbose 1

setstate mySQLDB connected
setstate mySQLDB 2020-10-09 10:52:02 CacheUsage 0
setstate mySQLDB 2020-10-09 10:52:02 NextSync 2020-10-09 10:54:02 or if CacheUsage 500 reached
setstate mySQLDB 2020-10-09 10:52:02 background_processing_time 0.2521
setstate mySQLDB 2020-09-26 18:08:54 countCurrent 289
setstate mySQLDB 2020-09-26 18:08:54 countHistory 1358710
setstate mySQLDB 2020-06-15 18:58:48 lastCachefile ./log/cache_mySQLDB_2020-06-15_18-05-08 import successful
setstate mySQLDB 2020-10-09 10:52:02 sql_processing_time 0.1911
setstate mySQLDB 2020-10-09 10:52:02 state connected



Offensichtlich werden jetzt aber die von mir gewünschten Werte der HourCounter-Devices nicht mehr in die DB geschrieben (im File-Log sehe ich sie jedoch):

2020-10-09_10:22:02 HzgHC_Buero pulseTimePerDay: 5100

Wo ist da mein Fehler? Liegt es an dem \ in der ersten Zeile?


Viele Grüße

Wolfgang
Titel: Antw:DBLog und Hourcounter, falsche RegExp?
Beitrag von: wowogiengen am 11 Oktober 2020, 15:21:32
Hallo,
irgendwie scheint die Frage untergegangen zu sein...
Möchte sie hiermit nochmal nach oben holen.
ich verzweifel an den Einträgen für die Datenbank...
was mache ich falsch
Titel: Antw:DBLog, falsche RegExp?
Beitrag von: amenomade am 11 Oktober 2020, 15:29:42
HzgHC.*:*.perDay
vs
HzgHC.*:.*PerDay

.* verdreht, und Grossbuchstabe
Titel: Antw:DBLog, falsche RegExp?
Beitrag von: wowogiengen am 11 Oktober 2020, 15:34:40
ähm,
ja...
das mit dem Großbuchstaben leuchtet mir ein, hatte es dann auch so geschrieben...
|HzgHC.*:*.PerDay

das mit .* und *. verstehe ich nicht...
bei HzgHC.* möchte ich ja, dass alle Devices, die mit HzgHC anfangen gematcht werden.

Bei :*.PerDay möchte ich, dass das Reading mit PerDay aufhört...
Und du sagst jetzt, dass es

|HzgHC.*:.*PerDay
heißen müsste?

Viele Grüße und Danke schon mal...
Titel: Antw:DBLog, falsche RegExp?
Beitrag von: amenomade am 11 Oktober 2020, 15:55:32
Regex Syntax:

"." steht für beliebige Zeichen
"*" definiert die Anzahl von den (hier mit Stern = beliebig)

Die Anzahl muss immer nach dem entspr "Matcher" kommen

:*.PerDay heisst: beliebige Anzahl von Doppelpunkten, dann ein einziges Zeichen, dann "PerDay"

Zitat von: wowogiengen am 11 Oktober 2020, 15:34:40

Und du sagst jetzt, dass es

|HzgHC.*:.*PerDay
heißen müsste?

Ja, so ist es
Titel: Antw:DBLog, falsche RegExp?
Beitrag von: wowogiengen am 11 Oktober 2020, 15:59:12
Danke,
dann hab ich wieder was dazu gelernt, bzw. meine Verwechslung hat sich aufgeklärt...
ich war bei .* irgendwie mit LUA, da ist der Punkt glaub das Concat von zwei Zeichenketten... deswegen...
also immer .* wenn ich beliebige Zeichen haben möchte...

Viele Grüße
Wolfgang