NEWS
Skript - Error Handling
-
@homoran sagte: oder shuttercontrol, oder.....
Ja, das sieht man an der Quelle des Error-Logs.
-
@homoran sagte in Skript - Error Handling:
@andreas-5 sagte in Skript - Error Handling:
Genau die beiden, Cannot get astro date for "night" und Cannot get astro date for "nightEnd".
und wie sieht's wirklich aus im log?
wer wirft den Fehler?javascript.0 2022-06-28 17:30:00.122 error Cannot get astro date for "night" javascript.0 2022-06-28 17:30:00.116 error Cannot get astro date for "nightEnd"
Ich habe auch schon nachgeschaut, was für Logausgaben da sonst noch waren, aber da war kein Script dabei, welches Astro-Daten nutzt.
Wie oben auch schon geschrieben, wurde ja auch bei der Suche nach Astro nur Sunrise und Sunset gefunden. -
@andreas-5 sagte: bei der Suche nach Astro nur Sunrise und Sunset gefunden.
Dann wurde nicht richtig gesucht.
-
@paul53 sagte in Skript - Error Handling:
getAstroDate("night")
Ich habe jetzt extra noch einmal in den Scripten nach getAstroDate, ohne die Klammer, gesucht und gefunden wurde ein einziges Script für SR und SS:
schedule("* * * * *", async function () { console.log('Zeiten schreiben'); setState("0_userdata.0.Sunset"/*Sunset*/, formatDate(getAstroDate("sunset", undefined, 1), "TT.MM.JJJJ SS:mm:ss"), true); setState("0_userdata.0.Sunrise"/*Sunrise*/, formatDate(getAstroDate("sunrise", undefined, 1), "TT.MM.JJJJ SS:mm:ss"), true); });
Aber ganz gut, dass ich da noch eimal vorbei geschaut habe! Das war eins meiner ersten Scripte und ist so einfach, dass ich es auch nicht mehr angeschaut habe. Aber jetzt stelle ich fest, ich habe das noch immer jede Minute laufen.
Das wird sich jetzt ändern!
Das andere erwähnte Script hatte zwar astro im Text, war aber auch inaktiv und hat nur einen Datenpunkt genutzt. -
@andreas-5 sagte: javascript.0 2022-06-28 17:30:00
Das ist doch ein Hinweis, wo man suchen sollte.
-
@andreas-5 hast du mal nach dem cron 30 17 * * * gesucht?
da startet doch das Skript -
@paul53 sagte in Skript - Error Handling:
@andreas-5 sagte: bei der Suche nach Astro nur Sunrise und Sunset gefunden.
Dann wurde nicht richtig gesucht.
Na, im Scriptfenster oben auf die Lupe und dann den Suchtext eingeben, das war mein Versuch! Und mit "astro" wurde ja auch etwas gefunden, aber kein night oder nightEnd!
Ich habe ausschliesslich JS aktiv!Aber meine Ursprungsfrage war ja, wo ich noch suchen könnte!
Shuttercontrol habe ich nicht laufen.Hier auch die Liste der laufenden Adapter, vielleicht ist da je etwas dabei:
system.adapter.admin : admin - v5.3.8 system.adapter.alias-manager : alias-manager - v1.2.4 system.adapter.backitup : backitup - v2.4.9 system.adapter.discovery : discovery - v3.0.3 system.adapter.echarts : echarts - v1.0.7 system.adapter.email : email - v1.0.10 system.adapter.feiertage : feiertage - v1.1.0 system.adapter.firetv : firetv - v1.0.0 system.adapter.flot : flot - v1.10.7 system.adapter.heatingcontrol : heatingcontrol - v2.8.6 system.adapter.history : history - v1.11.1 system.adapter.hm-rega : hm-rega - v3.0.40 system.adapter.hm-rpc : hm-rpc - v1.15.12 system.adapter.icons-icons8 : icons-icons8 - v0.0.1 system.adapter.icons-mfd-svg : icons-mfd-svg - v1.1.0 system.adapter.icons-open-icon-library-png: icons-open-icon-library-png - v0.1.2 system.adapter.info : info - v1.9.19 system.adapter.javascript : javascript - v5.7.0 system.adapter.luftdaten : luftdaten - v2.2.4 system.adapter.meteoalarm : meteoalarm - v2.1.3 system.adapter.mqtt : mqtt - v3.0.6 system.adapter.net-tools : net-tools - v0.2.0 system.adapter.openweathermap : openweathermap - v0.2.4 system.adapter.pegelalarm : pegelalarm - v1.2.5 system.adapter.pi-hole : pi-hole - v1.3.4 system.adapter.radar2 : radar2 - v2.0.3 system.adapter.rpi2 : rpi2 - v1.3.2 system.adapter.samsung : samsung - v0.5.8 system.adapter.shelly : shelly - v5.3.2 system.adapter.socketio : socketio - v4.2.0 system.adapter.sql : sql - v1.16.2 system.adapter.squeezeboxrpc : squeezeboxrpc - v1.3.9 system.adapter.systeminfo : systeminfo - v0.3.1 system.adapter.tankerkoenig : tankerkoenig - v2.1.1 system.adapter.tr-064 : tr-064 - v4.2.16 system.adapter.vis : vis - v1.4.15 system.adapter.vis-bars : vis-bars - v0.1.4 system.adapter.vis-canvas-gauges : vis-canvas-gauges - v0.1.5 system.adapter.vis-hqwidgets : vis-hqwidgets - v1.2.0 system.adapter.vis-icontwo : vis-icontwo - v0.87.0 system.adapter.vis-inventwo : vis-inventwo - v3.3.1 system.adapter.vis-material-advanced : vis-material-advanced - v1.7.2 system.adapter.vis-players : vis-players - v0.1.6 system.adapter.vis-plumb : vis-plumb - v1.0.2 system.adapter.vis-timeandweather : vis-timeandweather - v1.1.7 system.adapter.vis-weather : vis-weather - v2.5.5 system.adapter.web : web - v4.3.0 system.adapter.whatsapp-cmb : whatsapp-cmb - v0.2.2
-
@andreas-5 sagte: Liste der laufenden Adapter, vielleicht ist da je etwas dabei
Das Log zeigt, dass es aus "javascript.0" kommt, genau um 17:30 Uhr.
-
@homoran sagte in Skript - Error Handling:
@andreas-5 hast du mal nach dem cron 30 17 * * * gesucht?
da startet doch das SkriptDie eine Stelle, ja, aber die letzten Meldungen sind jetzt:
javascript.0 2022-06-28 18:03:19.434 error Cannot get astro date for "night" javascript.0 2022-06-28 18:03:19.429 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:03:17.444 error Cannot get astro date for "night" javascript.0 2022-06-28 18:03:17.429 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.192 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.186 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.170 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.165 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.152 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.146 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.122 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.114 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.097 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.090 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:00:00.077 error Cannot get astro date for "night" javascript.0 2022-06-28 18:00:00.070 error Cannot get astro date for "nightEnd"
Zumindest die nächsten, die ich jetzt gesehen habe.
Kann ich irgendwie die alten Meldungen auch noch einmal herauskitzeln. Wenn ich die angesehen habe, sind sie aus dem Log verschwunden.
Muss ich dafür den Loglevel ändern?Edit: Ich habe alle Scripte noch einmal durchgeschaut, das sind nicht so viele. Ist mir bisher nichts unter gekommen.
-
@andreas-5 sagte in Skript - Error Handling:
Kann ich irgendwie die alten Meldungen auch noch einmal herauskitzeln.
herunterladen! im admin ist immer nur ein Ausschnitt zu sehen.
nimm current.log -
@andreas-5 sagte: alle Scripte noch einmal durchgeschaut
Anscheinend ist es ein Skript mit einem Schedule alle 30 Minuten.
-
@paul53 sagte:
Anscheinend ist es ein Skript mit einem Schedule alle 30 Minuten.
hatte ich auch gedacht, die 18:03 waren dann doch zu weit von einer halben Stunde entfernt
-
@homoran sagte: die 18:03 waren dann doch zu weit von einer halben Stunde entfernt
Das kann eine Verzögerung von ca. 3 Minuten innerhalb des Schedules sein.
-
@paul53 hatte ich auch im Blick, aber bei den anderen kam es nur Sekunden später nochmal
kann natürlich sein, dass @Andreas-5 nicht die kompletten logs gepostet hat
Vielleicht sieht er im Download das System des Auftretens besser
-
@homoran sagte in Skript - Error Handling:
@paul53 hatte ich auch im Blick, aber bei den anderen kam es nur Sekunden später nochmal
kann natürlich sein, dass @Andreas-5 nicht die kompletten logs gepostet hat
Vielleicht sieht er im Download das System des Auftretens besser
Ja, ein paar Erkenntnisse hat es mir gebracht, wenn auch noch nicht die richtigen zu meiner Frage.
Der Fehler tritt offensichtlich jede halbe und volle Stunde auf, was ich noch merkwürdiger finde, da ich (dummerweise!!!) einige Scripte laufen habe, die jede Minute ausgeführt werden. Das ändert sich dann auch gerade.
Aber erst einmal habe ich 3 Scripte abgeschaltet und bin gespannt, ob sich um 18:30 weniger Einträge finden.Aber zuerst einmal Beispielhaft ein Block von heute Morgen:
2022-06-28 07:30:00.008 - [32minfo[39m: javascript.0 (19112) script.js.Datentransfer.Zeiten_in_Datenpunkte_schreiben: Zeiten schreiben 2022-06-28 07:30:00.041 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.051 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.054 - [32minfo[39m: javascript.0 (19112) script.js.Datenerzeugung.Sonne_und_Mond: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag 2022-06-28 07:30:00.074 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.082 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.085 - [32minfo[39m: javascript.0 (19112) script.js.Überwachung.Anwesenheit: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag 2022-06-28 07:30:00.102 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.111 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.114 - [32minfo[39m: javascript.0 (19112) script.js.Datentransfer.Zeiten_in_Datenpunkte_schreiben: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag 2022-06-28 07:30:00.125 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.129 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.131 - [32minfo[39m: javascript.0 (19112) script.js.Steuerung.Dachluke_und_Heizung: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag 2022-06-28 07:30:00.133 - [32minfo[39m: host.galadriel instance system.adapter.pegelalarm.0 started with pid 2944 2022-06-28 07:30:00.146 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.153 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.155 - [32minfo[39m: javascript.0 (19112) script.js.Steuerung.Licht: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag 2022-06-28 07:30:00.169 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "nightEnd" 2022-06-28 07:30:00.175 - [31merror[39m: javascript.0 (19112) Cannot get astro date for "night" 2022-06-28 07:30:00.177 - [32minfo[39m: javascript.0 (19112) script.js.Überwachung.Zustandsprüfung: Astro: Gültige Zeiten: [aktueller Tag: 6] | [nächster Tag: 6] | [Aktualisiert: 2] | Aktuelle Tageszeit: später Vormittag | Kommende Tageszeit: Mittag
Oh, das sieht nach dem Kopieren nicht mehr so schön aus, aber ist ja lesbar.
Also das Script Sonne_und_Mond z.B. schreibt mir die Werte Azimuth und Elevation und nutzt dazu die Funktion Date(), für aktuelles Datum und Uhrzeit. Wieso steht da etwas von Astro?Noch besser das Script Anwesenheit, das schaut nur auf dem tr-064, ob einer von uns Anwesend ist und schreibt das in einen Datenpunkt, damit ich nicht immer alle tr-064-Datenpunkte abfragen muss, reicht ja, wenn einer Anwesend ist. Da ist kein Zugriff auf irgendeine Zeit drin.
Naja, 18:30 ist vorbei, schaun wir einmal:
javascript.0 2022-06-28 18:30:00.067 info script.js.Überwachung.Zustandsprüfung: Astro: Gültige Zeiten: [aktueller Tag: 5] | [nächster Tag: 7] | [Aktualisiert: 2] | Aktuelle Tageszeit: Mittag | Kommende Tageszeit: früher Abend javascript.0 2022-06-28 18:30:00.065 error Cannot get astro date for "night" javascript.0 2022-06-28 18:30:00.059 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:30:00.048 info script.js.Steuerung.Licht: Astro: Gültige Zeiten: [aktueller Tag: 5] | [nächster Tag: 7] | [Aktualisiert: 2] | Aktuelle Tageszeit: Mittag | Kommende Tageszeit: früher Abend javascript.0 2022-06-28 18:30:00.046 error Cannot get astro date for "night" javascript.0 2022-06-28 18:30:00.040 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:30:00.027 info script.js.Steuerung.Dachluke_und_Heizung: Astro: Gültige Zeiten: [aktueller Tag: 5] | [nächster Tag: 7] | [Aktualisiert: 2] | Aktuelle Tageszeit: Mittag | Kommende Tageszeit: früher Abend javascript.0 2022-06-28 18:30:00.025 error Cannot get astro date for "night" javascript.0 2022-06-28 18:30:00.019 error Cannot get astro date for "nightEnd" javascript.0 2022-06-28 18:25:22.911 info Stop script script.js.Überwachung.Anwesenheit javascript.0 2022-06-28 18:24:51.493 info Stop script script.js.Datentransfer.Zeiten_in_Datenpunkte_schreiben javascript.0 2022-06-28 18:24:32.613 info Stop script script.js.Datenerzeugung.Sonne_und_Mond
Sind weniger geworden, allso kommt es tatsächlich aus den Scripten.
Also hier noch einmal ein Beispiel Zeiten_in_Datenpunkte_schreiben:schedule("* * * * *", async function () { console.log('Zeiten schreiben'); setState("0_userdata.0.Sunset"/*Sunset*/, formatDate(getAstroDate("sunset", undefined, 1), "TT.MM.JJJJ SS:mm:ss"), true); setState("0_userdata.0.Sunrise"/*Sunrise*/, formatDate(getAstroDate("sunrise", undefined, 1), "TT.MM.JJJJ SS:mm:ss"), true); });
Wenn dieses Script Schuld ist, müsste es dann nicht jede Minute auftreten?
-
@andreas-5 dann such doch mal nach schedule */30 * * * * oder schedule 0,30 * * * *
am besten nur den Anfangschedule("*/30
-
@andreas-5
Schau mal in folgende Skripte:- Steuerung.Dachluke_und_Heizung
- Steuerung.Licht
- Überwachung.Zustandsprüfung
Irgendwo muss das herkommen:
Astro: Gültige Zeiten: [aktueller Tag: 5] | [nächster Tag: 7] | [Aktualisiert: 2] | Aktuelle Tageszeit: Mittag | Kommende Tageszeit: früher Abend
wobei die letzten beiden Zeiten Astrozeiten sind.
Hast Du ein Skript unter der Gruppe "global" laufen (Expertenmodus aktivieren)?
-
@paul53 sagte in Skript - Error Handling:
@andreas-5
Schau mal in folgende Skripte:- Steuerung.Dachluke_und_Heizung
schedule("* * * * *"
Prüft gewisse Bedingungen und schliesst dann ggfs. die Dachluke, auch nichts mit Astro.
- Steuerung.Licht
schedule("* * * * *"
Macht aber nur zu gewissen, teilweise wechselnden, Zeiten etwas, die eben früher teilweise von SS und SR abhängig waren, aber inzwischen umgestellt auf den inzwischen vorhandenen Helligkeitssensor. (z.B. Haustürlicht, Terassenlicht)
- Überwachung.Zustandsprüfung
schedule("* * * * *"
Hast Du ein Skript unter der Gruppe "global" laufen (Expertenmodus aktivieren)?
Unter global gibt es nur das Astro-Script. - Steuerung.Dachluke_und_Heizung
-
@andreas-5 sagte: Unter global gibt es nur das Astro-Script.
Wie sieht das Skript aus?
-
@paul53 sagte in:
Irgendwo muss das herkommen:
das sieht etwas nach dem Tageszeiten Skript aus.
Das habe ich auch in Verdacht. Da kommt ja auch irgendwann die Nacht, wenn das nicht je nach geographischer Lage abgefangen wird