"no pending sleeps" im Logfile bei AT-Kommando

Begonnen von MacErNed, 07 Januar 2019, 20:12:20

Vorheriges Thema - Nächstes Thema

MacErNed

Hallo Zusammen,

ich habe seit einigen Wochen ein ziemlich lästiges Problem, was mein Logfile massiv füllt (um nicht zu sagen vollmüllt).
Für einen Temperatursensor habe ich schon vor längerem die Datenlast reduziert, indem ich einen Dummy per

define AktAussenTemp_WiGa dummy

angelegt habe, welcher alle 60 Sek. mit der aktuellen Außentemperatur über folgendes AT-Kommando aktualisiert wird:

define ATempWiGaAnDummy at +*00:01:00 { my $d= ReadingsVal("Aussentemp_WiGa","getG1",0); fhem("set AktAussenTemp_WiGa $d")}

Hierbei ist "getG1" das Reading des Geräts "Aussentemp_WiGa". Am Dummy wurde dann noch das folgende Attribut hinzugefügt:

attr AktAussenTemp_WiGa event-on-change-reading state

Veränderte Werte werden somit in das Logfile zum Device geschrieben.

Es funktioniert auch alles soweit, jedoch habe ich seit einigen Wochen im FHEM Logfile jede Minute, also
immer wenn das AT-Kommando ausgeführt wird, zwei Einträge mit "... no pending sleeps".

ZitatBeispiel:
2019.01.01 00:38:38 3: set AktAussenTemp_WiGa 5.20 °C : no pending sleeps
2019.01.01 00:38:38 3: ATempWiGaAnDummy: no pending sleeps

Deaktiviere ich das AT, werden natürlich keine Meldungen ins FHEM Logfile geschrieben, jedoch auch keine Temperaturwerte in das Logfile des Device "AktAussenTemp_WiGa"  :-\

Es stellt sich nun die Frage, warum diese "... no pending sleeps" Meldungen auftreten und was ich dagegen machen kann?
Ich hoffe Ihr habt einen Tip für mich.

VG,
MacErNed

KernSani

Hi,

Unabhängig von dem "no pending sleeps": Wieso brauchst du einen extra dummy? Kannst du nicht mit den event-on-* Attributen direkt am Sensor die Datenlast reduzieren?

Grüße,

Oli
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

MacErNed

Hi Oli,

der Sensor "Aussentemp_WiGa" liefert alle 5 Sek. aktuelle Werte und wird daher nicht geloggt. Mir reichen für ein Logfile mit Diagramm die Änderungen alle 60 Sek.

VG,
MacErNed

KernSani

Hi MacErNed,

deshalb meine ich event-on-change-reading am Sensor setzen, dann wird nur bei Änderung ein Event erzeugt (und damit ein Logeintrag geschrieben). Ggf. kannst du dabei auch noch einen Threshold setzen, dass nur Änderungen von z.B. größer 0,19 Grad geloggt werden, dass aber (event-min-interval) mindestens ein Eintrag pro Stunde kommen soll (sollte die Temperatur sich nicht ändern)...
Das macht m.E. viel mehr Sinn (und reduziert die Systemlast)

Grüße,

Oli
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Otto123

Hi,

ich weiß auch nicht was pending sleeps sind aber dies hier
{ my $d= ReadingsVal("Aussentemp_WiGa","getG1",0); fhem("set AktAussenTemp_WiGa $d")}

geht auch so
set AktAussenTemp_WiGa [Aussentemp_WiGa:getG1]

Nennt sich set magic  ;)
Und vielleicht verschwindet ja dadurch die Meldung? Ist aber unwahrscheinlich.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

MacErNed

Hi Otto und Oli,

DANKE für die Tipps  :D
Der set-magic-Vorschlag von Otto hat nun schon bewirkt, daß keine "no pending sleeps" mehr ins Logfile geschrieben werden.
Ein Rückbau zur ursprünglichen Lösung erzeugte die Meldungen auch zuverlässig wieder  ::)
Na ja, ich verstehe es noch nicht, aber das Problem ist gelöst  :)

Den Vorschlag von Oli mit event-on-change-reading muss ich noch umsetzen.

VG
MacErNed

Otto123

Moin,

was mir noch auffällt: Eigentlich fehlt in dem define im Perl Teil ja ein Semikolon? Verursacht dies die eigenartige Meldung?
https://commandref.fhem.de/commandref_DE.html#command

Also konkret:
define ATempWiGaAnDummy at +*00:01:00 { my $d= ReadingsVal("Aussentemp_WiGa","getG1",0);; fhem("set AktAussenTemp_WiGa $d")}

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz