Seite 1 von 1

CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 06.06.2020, 13:38
von DirkA
Hallo,

ich hab in meinem CCU-Logfile folgende sich ständig wiederholenden Fehlermeldungen gefunden (System: Tinker Board, aktuelles Raspberrymatic):

Code: Alles auswählen

homematic-raspi local0.warn ReGaHss: WARNING: incorrect use of Variable() (use AlType()): Name=dom.GetObject(2314).Name(); ValueType=dom.GetObject(2314).ValueType(); integer Type=dom.GetObject(2314).Type(); WriteLine(dom.GetObject(2314).Variable()); Timestamp=dom.GetObject(2314).Timestamp();  [ExecAlarmDP():iseESPexec.cpp:10251]

Code: Alles auswählen

homematic-raspi local0.err ReGaHss: ERROR: ScriptRuntimeError: Name=dom.GetObject(2314).Name(); ValueType=dom.GetObject(2314).ValueType(); integer Type=dom.GetObject(2314).Type(); WriteLine(dom.GetObject(2314).Variable()); Timestamp=dom.GetObject(2314).Timestamp();  [ExecError():iseESPexec.cpp:12798]
Das gleiche noch mit zwei weiteren IDs. Meine Vermutung ging erst in Richtung eines von mir geschriebenen Programms, die drei Variablen sind aber Systemvariablen, die ich (zumindest soweit ich weiß) nicht einsetze:

1) DutyCycle-Alarm
2) ups@-ADRESSE-Alarm
3) WatchDog-Alarm

Kann mir jemand einen Hinweis geben, wie ich dem Problem weiter auf den Grund gehen kann?

Viele Grüße

Dirk

Re: CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 20.06.2020, 18:08
von drhwpot
Hallo Dirk,
Hallo liebes Forum,

ich darf mich hier anhängen, ich bekomme ebenfalls die Fehlermeldung in meinem Logfile:
Fehler ScriptRuntimeError (genau:

Code: Alles auswählen

Error,192.XXX.XXX.XX,local0,ReGaHss,"ERROR: ScriptRuntimeError: !!Berechung Differenztemperatur) 
und dies bei einem sehr "alten" Skript, dieses läuft seit Jahren. Gibt es hierfür eine Erklärung, das Skript funktioniert ohne Problem bzw. liefert weiterhin die Ergebnisse ohne Probleme.

Auszug Protokoll.PNG
Skript zur Berechnung der Differenztemperatur

Code: Alles auswählen

!! Berechnung Differenztemperatur
real Aussen_Temperatur = dom.GetObject("BidCos-RF.KEQXXXXXX:1.TEMPERATURE").Value();
real Sonnen_Temperatur = dom.GetObject("BidCos-RF.NEQXXXXXX:1.TEMPERATURE").Value();
dom.GetObject("Diff_Temperatur").State(Sonnen_Temperatur - Aussen_Temperatur);
Woher kommt der Fehler?

Beste Grüße

HP

Re: CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 20.06.2020, 22:36
von Xel66
Der Inhalt in der Fehlermeldung passt nicht zu dem geposteten Script, welches grundsätzlich keine Fehler werfen sollte.

Gruß Xel66

Re: CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 21.06.2020, 00:07
von drhwpot
dies ist genau das Problem: einen Fehler im Skript kann ich nicht erkennen, aber die Fehlermeldung im Log ist eindeutig

Code: Alles auswählen

ERROR: ScriptRuntimeError: !!Berechung Differenztemperatur real Aussen_Temperatur = dom.GetObject("BidCos-RF.KEQXXXXXXX:1.TEMPERATURE").Value(); real Sonnen_Temperatur = dom.GetObject("BidCos-RF.JEQXXXXXXX:1.TEMPERATURE").Value(); real delta = Sonnen_Temperatur - Aussen_Temperatur; dom.GetObject("Diff_Temperatur").State(delta); [ExecError():iseESPexec.cpp:12798]


in der Fehlermeldung ist ein eindeutiger Bezug zu dem Skript, die Gründe hierfür sind mir nicht klar. Gibt es Ideen / Hinweise / Lösungen?

Beste Grüße

HP

Re: CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 21.06.2020, 00:37
von Xel66
drhwpot hat geschrieben:
21.06.2020, 00:07
in der Fehlermeldung ist ein eindeutiger Bezug zu dem Skript...
Nein, eben nicht. Die Zeile "real delta = Sonnen_Temperatur - Aussen_Temperatur" und die folgende aus der Log-Meldung sind in Deinem geposteten Script nicht enthalten. Folglich wirft ein anderes Script diese Fehlermeldung und nicht das gepostete.

Gruß Xel66

Re: CCU Logfile: Fehler ScriptRuntimeError

Verfasst: 21.06.2020, 01:23
von drhwpot
Du hast Recht! Ich habe vor einigen Wochen ein Programm umgebaut und hierbei das Temperatur-Skript (alte Version) nicht gelöscht, obwohl ich dies eigentlich vor hatte und somit habe ich unbewusst dafür gesorgt, dass Skript sowohl in der alten als auch in der neuen Version gelaufen ist. Asche auf mein Haupt....

Alte Version war:

Code: Alles auswählen

!! Berechnung Differenzemperatur
real Aussen_Temperatur = dom.GetObject("BidCos-RF.KEQXXXXXXX.1 TEMPERATURE").Value();
real Sonnen_Temperatur = dom.GetObject("BidCos-RF.NEQXXXXXXX:1.TEMPERATURE").Value();

real delta = Sonnen_Temperatur - Aussen_Temperatur;
dom.GetObject("Diff_Temperatur").State(delta); 
Ich habe nun die Doppelung beseitig.

Beste Grüße

HP