FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Rampler am 22 Januar 2015, 19:18:08

Titel: [Gelöst] Warum schreibt der trigger nicht ins filelog ?
Beitrag von: Rampler am 22 Januar 2015, 19:18:08
Hallo zusammen,
ich stehe wohl gerade auf der Leitung..
Das trigger HZ.brenner1 $data{oelverbrauch} im u.g. notify schreibt nicht in das filelog, setzte ich dagegen das Trigger command manuell ab, steht es im filellog.
Folgendes notify:
HZ.brenner1 {
if("%" eq "closed"){
$data{brenneron_lasttime}=time()} elsif("%" eq "open") {$data{oelverbrauch} = (time()-$data{brenneron_lasttime})/60*0.03626 ;
fhem "trigger HZ.brenner1 $data{oelverbrauch}"}}

Funktioniert auch soweit, im eventlog kommt:
2015-01-22 19:13:24 CUL_HM HZ.brenner1 closed
2015-01-22 19:13:42 CUL_HM HZ.brenner1 open
2015-01-22 19:13:42 CUL_HM HZ.brenner1 0.0107497881753445

Das Filelog ist so definiert:
Internals:
   DEF        ./log/HZ.brenner-%Y-%m.log HZ.brenner*.
   NAME       FileLog_HZ.brenner
   NR         226
   NTFY_ORDER 50-FileLog_HZ.brenner
   REGEXP     HZ.brenner*.
   STATE      active
   TYPE       FileLog
   currentlogfile ./log/HZ.brenner-2015-01.log
   logfile    ./log/HZ.brenner-%Y-%m.log
   Pos:
Attributes:
   icon       time_note
   logtype    text
   room       Heizraum

Könnt Ihr mir bitte auf die Sprünge helfen ?

gruß
Klaus
Titel: Antw:Warum schreibt der trigger nicht ins filelog ?
Beitrag von: rudolfkoenig am 22 Januar 2015, 19:39:23
Unter anderem um eine Endlosschleife zu vermeiden, ist es nicht moeglich aus einem Event fuer Geraet X weitere Events fuer das gleiche Geraet X zu erzeugen. Abhilfe: fhem("sleep 0.1;; trigger ...")  In diesem Fall wuerde dieses Workaround auch eine Endlosschliefe erzeugen, nur je nach CPU langsamer.
Titel: Antw:Warum schreibt der trigger nicht ins filelog ?
Beitrag von: Rampler am 22 Januar 2015, 19:50:24
Zitat von: rudolfkoenig am 22 Januar 2015, 19:39:23
Unter anderem um eine Endlosschleife zu vermeiden, ist es nicht moeglich aus einem Event fuer Geraet X weitere Events fuer das gleiche Geraet X zu erzeugen. Abhilfe: fhem("sleep 0.1;; trigger ...")  In diesem Fall wuerde dieses Workaround auch eine Endlosschliefe erzeugen, nur je nach CPU langsamer.

....  peinlich .....
ducken und weg ..
Danke
Klaus