[GELÖST] - Nur loggen wenn Wert über x

Begonnen von 87insane, 15 August 2019, 13:01:49

Vorheriges Thema - Nächstes Thema

87insane

Hi zusammen,

gibt es einen Weg, nur das zu loggen was z.B. über x Watt liegt?

Aktuelle DEF:
defmod FileLog_MQTT2_shellyplug_s_040C7E FileLog ./log/MQTT2_shellyplug_s_040C7E-%Y-%m.log MQTT2_shellyplug_s_040C7E:power.*|MQTT2_shellyplug_s_040C7E:relay_0_energy.*

Hab erwartet das man sowas wie MQTT2_shellyplug_s_040C7E:power.>x oder so machen kann.... Hat jemand eine Idee?

Problem: Eines meiner Geräte hat im Standby ca. 0.8 W und das brauche bzw möchte ich nicht im Plot haben.

Danke @ all!

DS_Starter

Für Filelog kann ich es nicht beantworten.
In DbLog ist es problemlos über das Attribut valueFn möglich.
Vielleicht hast du ja DbLog noch parallel laufen ...

VG
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

CoolTux

In RegEx gibt es sowas wie > oder < nicht. Du kannst aber Deine RegEx entsprechend gestalten.

Trigger nur Werte die Zweistellig sind
MQTT2_shellyplug_s_040C7E.relay_0_energy:.\d{2}

Nur Werte ab 30
MQTT2_shellyplug_s_040C7E.relay_0_energy:.[3-9]\d+

und so weiter
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

frank

oder ein userreading erstellen und loggen, welches bei gewünschter bedingung den wert liefert und sonst den wert "undef".
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

87insane

#4
Schön - Wie viele Ideen ihr in der kurzen Zeit gesammelt habt.

Wollte eh mal auf ConfigDB usw umsteigen. Ich hänge immer noch auf normalem Logging und normalen Konfig Dateien.

Die Regex Idee gefällt mir auch. Allerdings muss ich mir dann was ausdenken was Werte ab 1 loggt und dann von 1 bis zu 4-Stellen.
Und die Stellen nach dem Komma nicht als Feind ansieht.

Auch die Idee mit dem Userreading ist gut! Hmmm...

Danke Euch allen für die schnelle und gute Hilfe!

87insane

#5
Füge mal den vierten Weg für die Nachwelt ein.

Da es MQTT2 ist und ich die Readings direkt manipulieren kann, habe ich das mal so gemacht:
shellies/shellyplug-s-040C7E/relay/0/power:.* {'power' => $EVENT > 1 ? '$EVENT' : '0'}

Ist aber auch nur für den Übergang!