NEWS
Java-Script Instanz plötzlich langsam
-
Hallo iobroker-Community,
ich hoffe ihr könnt mir bei meinem Problem helfen. Ich habe seit ca. einer Woche das Problem, dass meine Instanz des Java-Script-Adapters plötzlich extrem zeitlich hinterher läuft. Das macht sich bemerkbar, wenn ich per Alexa-Sprachbefehl zum Beispiel virtuelle Schalter steuere, die dann Scripts auslösen. Das hängt dann zum Teil 5-10 Minuten hinterher. Starte ich die Java-Script-Instanz neu, läuft zunächst erst einmal alles wie gehabt und zeitliche Verzögerung, bis es sich dann wieder irgendwo "verschluckt". Leider weiß ich nicht wann genau das Problem erzeugt wird und die Logs sind da auch wenig aussagekräftig. Ich tippe ja auf irgendeins meines Blocky-Scripts, wobei ich da in letzter Zeit keine neuen dazu gebaut habe.Hat jemand einen Ansatz wie ich das irgendwie sinnvoll analysieren kann?
Danke
-
@martenn sagte: Ich tippe ja auf irgendeins meines Blocky-Scripts
Vermutung: (Trigger-)Endlosschleife! Oder vergessen, Timeouts / Intervalle zu stoppen.
-
@paul53 danke für die rasche Antwort. Ähnliche Gedanken habe ich mir natürlich auch gemacht, aber ich komme was die Analyse angeht auf keinen grünen Zweig. Gibt es denn irgendein Mittel eine Technik mit der ich diese Script-"Lang- bzw. Dauerläufer" irgendwie zu erkennen?
-
@martenn ich würde erstmal die auslastung checken -
auf console: "apt install htop"
dann htop öffnen und die werte dort posten
es muss - aber kann - nicht immer ein script problem sein - du merkst das nur meistens über die scripte, die langsam reagieren, weil ein system problem besteht
-
@liv-in-sky System läuft eigentlich unauffällig, zumindest gerade. CPU-Last und auch RAM-Auslastung im grünen Bereich.
-
@martenn zeigen!
-
dann wird es wohl ein script sein - musste leider suchen - durch script disabeln, wenn keine logs zu sehen sind, die hinweise geben
manchmal bleiben code-schleifen im system hängen, obwohl das script disabled wird - daher immer wieder mal die javascript instanz neustarten
-
-
@martenn eigentlich das was darunter steht
-
@liv-in-sky sagte in Java-Script Instanz plötzlich langsam:
@martenn eigentlich das was darunter steht
und dass der swap schon angeknabbert ist.
Da geht wohl zeitweise der RAM aus. das auslagern geht auf die Zeit und dann geht auch die Load hoch.
Aber wann und wieso sieht man hier nicht.
das müsste man loggen -
@liv-in-sky said in Java-Script Instanz plötzlich langsam:
@martenn eigentlich das was darunter steht
gerne...
Ich habe das jetzt aber mal eine Weile beobachtet, da sehe ich, zumindest aktuell, keine wirklichen Ausreißer und das der Swap angeknabbert wird, habe ich gesehen, konnte ich aber irgendwie in den x Minuten wo ich das beobachte nicht wirklich nachvollziehen, weil immer genügend RAM frei.
-
@martenn sagte in Java-Script Instanz plötzlich langsam:
konnte ich aber irgendwie in den x Minuten wo ich das beobachte nicht wirklich nachvollziehen, weil immer genügend RAM frei.
war wohl auch nicht aktuell, deswegen meinte ich ja
@homoran sagte in Java-Script Instanz plötzlich langsam:
Aber wann und wieso sieht man hier nicht.
das müsste man loggen -
ist js-controller immer um die 19 bei cpu ?
-
checke auch mal: "tail -f /var/log/syslog"
kommt da was ?
hast du viele adapter installiert ?
läuft noch was anderes samba, irgendwelche datenbanken, sonstiges -
@liv-in-sky said in Java-Script Instanz plötzlich langsam:
checke auch mal: "tail -f /var/log/syslog"
kommt da was ?
hast du viele adapter installiert ?
läuft noch was anderes samba, irgendwelche datenbanken, sonstigestail wirft mir nur immer wieder einen Fehler vom meinem tp-link Adapter aus, weil gerade eine IP-Adresse nicht erreichbar, aber das sollte das System ja nicht so verlangsamen. Sonst laufen auf dem Raspi keine weiteren Dienste, ausschließlich der iobroker, der Rest ist auf mein Nas ausgelagert.
der js-controller macht schon ordentlich Last auf dem System, geht immer wieder mal auf bis 25% CPU hoch. Aber das liegt daran, dass ich ein paar Scripts habe, die alle 10 Sek. ausgeführt, dort werden aber wirklich nur einfache mathematische Berechnungen für meine Energiesteuerung ausgeführt.
-
schwierig - außer die 19% cpu ist nix auffälliges - kann aber auch javascript verursachen
also doch die scripte deaktivieren
ich hatte vor kurzem das problem, das ein befehl im linux-control adapter die festplatte und dadurch eine io last erzeugt hatte - du könntest noch prüfen bzw beobachten
apt install iotop
und dann: iotop -o aufrufen
-
@liv-in-sky sagte in Java-Script Instanz plötzlich langsam:
du könntest noch prüfen bzw beobachten
oder einfach die system load loggen.
wenn die hochgeht hat man eine Uhrzeit mit der man die anderen logs durchsuchen kann.gleiches mit RAMavailable nur da geht's dann runter
-
bei javascript fehlern geht die instanz auf über 3000 io's.. das kannst du im Admin sehen
dann wird das ganze System lahmdas einzige was du machen kannst ist das zu loggen..
dann weisast du wann es auftrift .. und so kannst du wenn du dich mit deinen Scripten auskennst nachvollziehen welcher das ist
-
@arteck
nur mal so.
Für was braucht man 5 js Instanzen?Ich habe 2; eine primär, die andere zum testen.
-
@bahnuhr ich hab ein multihost..mit jeweils 2 javascript instanzen..
nach wichtigkeit sortiert...
hab ich alles in einer und mir ein script knallt dann verabschiedet sich immer die ganze instanzalso Licht in einer
Rollosteuerung in einer
Proxmox überwachung und Systemüberwachung in einer
usw