NEWS
SOLVED Daemon.log voll mit integer overflow Meldungen
-
Hallo zusammen,
Ich bin erfolgreich auf den raspi4 umgezogen und mein System lief in der letzten Zeit super stabil und zuverlässig- vielen Dank an alle die das Projekt so tatkräftig unterstützen!
Heute kam es dann zu einem kompletten Ausfall des systems. Die Ursache hatte ich schnell gefunden: kein Speicherplatz mehr auf der SD-Karte. Ich habe dann versucht den Übeltäter zu finden und konnte es auch schnell eingrenzen: das daemon.log war auf über 9GB angewachsen.
Es ist voll mit Einträgen dieser Art:Timeout duration was set to 1. (node:4574) TimeoutOverflowWarning: 2419200000 does not fit into a 32-bit signed integer.
Es ist nach einer kurzen Recherche wohl ein Fehler in Nodejs und offensichtlich eine Zahl die nicht mehr als int32 abgebildet werden kann. Soweit so gut.
Hat jemand eine Idee wie ich herausfinden kann was genau dies verursacht? Sprich wie ich den Fehler loswerden kann? Bin gerade ein bisschen ideenlos, wie ich das weiter eingrenzen kann auf ein Adapter oder Skript o.ä.
Freue mich über Hinweise
Viele Grüße
Trident
-
@paul53 Ich hab das Problem gefunden! Es tritt auf, wenn ich die Werte des Statistik-Adapters unter „Save“ und dann die Quartals und Jahreswerte speichern will mit dem sql Adapter. Nehme ich diese raus - geht alles wieder.
-
@Trident sagte:
2419200000
Der Wert entspricht exakt 28 Tagen (40320 Minuten). Wird in einem Skript solch eine lange Verzögerungszeit verwendet ?
-
@paul53
Danke für den Hinweis. Eigentlich habe ich kein Skript mit einer solchen Verzögerung. Ich betreibe sogar nur eines wo überhaupt der Baustein vorkommt. Dieses ist jetzt deaktiviert (stop Button in der gui) und alle der JavaScript Adapter ist neugestartet.
Keine Änderung...
Das spammen der errors im log hört allerdings auf, wenn ich den iobroker komplett stoppe. Es liegt also schon an ihm. Ein Neustart behebt das Problem leider aber auch nicht.Ich habe nun alle Adapter der Reihe noch deaktiviert und bin glaube ich dem Verursacher auf die Schliche gekommen. Deaktiviere ich den sql Adapter hören die errors auf!
Leider brauche ich diesen relativ dringend, gibt es Ideen wie ich helfen kann den Fehler einzugrenzen?
-
@Trident
Ist bei einem Datenpunkt ein Aufzeichnungsintervall von 2419200 s angegeben ? -
@paul53 nein - leider nicht. Ist alles auf „bei Änderung“ und einer gewissen Vorhaltezeit - welche aber nie 28 Tage ist sondern zwischen 1-2 Jahren.
-
@Trident
Solch ein Eintrag existiert nirgends ? -
@paul53 ich meine nicht - werde das aber nochmal gründlich prüfen. Danke für den Hinweis! Da hatte ich nicht explizit hingeschaut! Melde mich dann wieder
-
ich habe nochmals geprüft und nur Einträge mit 30 oder 60 sekunden gefunden
-
@Trident
Irgendwo muss es herkommen ? Würde es der Adapter verursachen, hätten andere Anwender auch das Problem. -
@paul53 schon richtig, den Gedanken hatte ich auch ....
-
@Trident Danke auf jedenfalls für die Ideen - ich suche mal weiter. Ein großer Zahlen wert als value kann es ja nicht sein, oder? Was ich gemacht habe ist, dass ich Datentypen spezifisch definiert habe - also im Menü des sql Adapters.
-
@Trident sagte:
Ein großer Zahlen wert als value kann es ja nicht sein, oder?
Nein, das hat nichts mit Timeout zu tun. In der Instanz-Konfiguration steht auch keine so lange Zeit ?
-
@paul53 wenn du die default-Einstellung meinst? Da steht nichts in dieser Dimension ... da steht tausend Millisekunden
-
@paul53 Ich prüfe zur Sicherheit nochmal alle datenpunkte, welche ich mit dem sql Adapter aufzeichne ... nicht das ich was übersehen habe - glaube ich eigentlich nicht aber mal sehen. Gleichzeitig deaktiviere ich mal schritt für schritt das logging der datenpunkte und prüfe die Auswirkungen. Dann müsste ich den Schuldigen ja finden (ist zwar extrem viel nerviges klicken sehe im Moment aber keine anderen weg).
-
@paul53 Ich hab das Problem gefunden! Es tritt auf, wenn ich die Werte des Statistik-Adapters unter „Save“ und dann die Quartals und Jahreswerte speichern will mit dem sql Adapter. Nehme ich diese raus - geht alles wieder.