Verständnisprobleme mit addlog

Begonnen von raspklaus, 28 August 2014, 10:22:38

Vorheriges Thema - Nächstes Thema

raspklaus

Hallo,

ich verwende für einen Homematic Türsensor folgende Definition aund Auswertung:

# Garagentor 146a Fensterkontakt
define Garagentor146a_offen CUL_HM 26B50D
attr Garagentor146a_offen IODev CUL_800
attr Garagentor146a_offen actCycle 028:00
attr Garagentor146a_offen actStatus alive
attr Garagentor146a_offen alias Garagentor 146a offen
attr Garagentor146a_offen autoReadReg 4_reqStatus
attr Garagentor146a_offen devStateIcon closed:FS20.off open:FS20.on
attr Garagentor146a_offen event-on-change-reading state,battery
attr Garagentor146a_offen expert 2_full
attr Garagentor146a_offen firmware 2.4
attr Garagentor146a_offen group Garage
attr Garagentor146a_offen model HM-SEC-SC-2
attr Garagentor146a_offen peerIDs 00000000,
attr Garagentor146a_offen room Garage
attr Garagentor146a_offen serialNr LEQ0138267
attr Garagentor146a_offen subType threeStateSensor
define FileLog_Garagentor146a_offen FileLog ./log/Garagentor146a_offen-%Y-%m.log Garagentor146a_offen
attr FileLog_Garagentor146a_offen logtype fs20
attr FileLog_Garagentor146a_offen room Garage


Der Plot dafür wird aber nicht konstant gezeichnet da Aktivitäten natürlich nur geloggt werden wenn der Sensor eine Änderung des Zustands erkennt.

Bevor ich nun meine Frage stelle erstmal die Antworten auf die üblichen Beiträge:

1. Ja ich habe die Befehlsreferenz gelesen
2. Ja ich habe die Beiträge im Forum gelesen
3. Ja ich habe den dafür zuständigen Wikiartikel gelesen sonst hätte ich ja auch die Erweiterung für addlog nicht in 99_MyUtils.pm
4. Ja mein Logtype ist FS20 sonst würde im Plot gar nichts angezeigt

So nun meine Frage, da ich die Beispiele für addlog leider nicht so richtig verstehe

Wie muss die Befehlszeile für addlog lauten ?

Die hier funktioniert nicht

define a_actuator at +*01:00 {addLog("Garagentor_146a","status")}

Im Log steht:

2014-08-27_13:33:48 Garagentor146a_offen closed
2014-08-27_13:34:52 Garagentor146a_offen open
2014-08-27_13:36:09 Garagentor146a_offen closed
2014-08-27_15:51:27 Garagentor146a_offen open
2014-08-27_15:53:55 Garagentor146a_offen closed
2014-08-27_16:31:02 Garagentor146a_offen open
2014-08-27_17:01:12 Garagentor146a_offen closed
2014-08-27_17:15:59 Garagentor146a_offen open
2014-08-27_17:46:09 Garagentor146a_offen closed
2014-08-27_19:24:16 Garagentor146a_offen open
2014-08-27_19:54:27 Garagentor146a_offen closed

betateilchen

Zitatja auch die Erweiterung für addlog nicht in 99_MyUtils.pm

Wenn Du in Deiner 99_MyUtils.pm wirklich addlog stehen hast, dann musst Du die Funktion auch als addlog() aufrufen und nicht als addLog(). Perl unterscheidet generell Groß- und Kleinschreibung.

Was steht denn in Deinem Logfile zum Thema addLog? Falls ein Funktionsaufruf nicht funktioniert, sollte sich eine Fehlermeldung finden lassen. Wird Deine 99_MyUtils.pm beim fhem Start überhaupt geladen?


-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

raspklaus

#2
Die Definition ist nun

define l_actuator at +*00:02 {addLog("Garagentor146a_offen","status")}

Es kommt die Fehlermeldung

2014-08-28_12:18:14 Garagentor146a_offen status: addLog: invalid reading   << addLog


raspklaus

ok,

habs selbst gefunden

define l_actuator at +*00:02 {addLog("Garagentor146a_offen","state")}