NEWS
Javascript adapter geht immer von grün auf rot
-
@djsirius
Jedes Skript für sich ist ein separates Programm.
Wie gesagt, suche hier im Forum nach dem Stichwort
Dort sind links gepostet wie man die Stellen finden kann.Das entstehen von Memory leaks hat etwas mit dem automatischen Speicher Management von JavaScript und der fehlerhaften Anwendung von bestimmten Mustern zu tun
Ein beliebter Fehler sind die Timer
Du erzeugst mit onIntervsl oder onTimeout einen Timer.
Du erhältst eine id zurück mit der du diesen Timer wieder löschen kannst. Geht dir dieser verloren oder wird das Skript neu gestartet, dann existiert dieser Timer im Speicher immer noch ohne Möglichkeit den zu löschen (nur Neustart des Ja Adapters hilft hier)
Wenn jetzt diese Stelle zig Fach aufgerufen wird, dann sammelt sich dieser Müll im Speicher an und frisst deinen freien Speicher für diesen thread (nennt sich heap) weg.
Das selbe gilt auch für trigger (insbesondere trigger in trigger) -
Schau rein, ob die Basis sauber ist.
sudo ln -s /usr/bin/node /usr/bin/nodejs uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejsfree -ht --mega@thomas-braun said in Javascript adapter geht immer von grün auf rot:
uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
iobroker@debian:~$ sudo ln -s /usr/bin/node /usr/bin/nodejs ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits iobroker@debian:~$ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs x86_64 /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.3 v14.19.3 6.14.17 iobroker /home/iobroker OK:1 http://deb.debian.org/debian buster InRelease OK:2 http://security.debian.org/debian-security buster/updates InRelease OK:3 http://deb.debian.org/debian-security buster/updates InRelease OK:4 http://deb.debian.org/debian buster-updates InRelease OK:5 http://deb.debian.org/debian buster-backports InRelease OK:6 http://ftp.de.debian.org/debian buster InRelease OK:7 https://packages.sury.org/php buster InRelease OK:8 https://deb.nodesource.com/node_14.x buster InRelease OK:9 http://ftp.de.debian.org/debian buster-updates InRelease Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Aktualisierung für 16 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen. nodejs: Installiert: 14.19.3-deb-1nodesource1 Installationskandidat: 14.19.3-deb-1nodesource1 Versionstabelle: *** 14.19.3-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x buster/main amd64 Packages 100 /var/lib/dpkg/status 10.24.0~dfsg-1~deb10u1 500 500 http://ftp.de.debian.org/debian buster/main amd64 Packages 500 http://security.debian.org/debian-security buster/updates/main amd64 Packages 500 http://deb.debian.org/debian buster/main amd64 Packages 500 http://deb.debian.org/debian-security buster/updates/main amd64 Packages iobroker@debian:~$ free -ht --mega total used free shared buff/cache available Mem: 7,9G 2,7G 3,9G 13M 1,2G 4,9G Swap: 4,0G 0B 4,0G Total: 11G 2,7G 7,9G iobroker@debian:~$ -
@thomas-braun said in Javascript adapter geht immer von grün auf rot:
uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
iobroker@debian:~$ sudo ln -s /usr/bin/node /usr/bin/nodejs ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits iobroker@debian:~$ uname -m && which nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs x86_64 /usr/bin/nodejs /usr/bin/node /usr/bin/npm v14.19.3 v14.19.3 6.14.17 iobroker /home/iobroker OK:1 http://deb.debian.org/debian buster InRelease OK:2 http://security.debian.org/debian-security buster/updates InRelease OK:3 http://deb.debian.org/debian-security buster/updates InRelease OK:4 http://deb.debian.org/debian buster-updates InRelease OK:5 http://deb.debian.org/debian buster-backports InRelease OK:6 http://ftp.de.debian.org/debian buster InRelease OK:7 https://packages.sury.org/php buster InRelease OK:8 https://deb.nodesource.com/node_14.x buster InRelease OK:9 http://ftp.de.debian.org/debian buster-updates InRelease Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig Aktualisierung für 16 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen. nodejs: Installiert: 14.19.3-deb-1nodesource1 Installationskandidat: 14.19.3-deb-1nodesource1 Versionstabelle: *** 14.19.3-deb-1nodesource1 500 500 https://deb.nodesource.com/node_14.x buster/main amd64 Packages 100 /var/lib/dpkg/status 10.24.0~dfsg-1~deb10u1 500 500 http://ftp.de.debian.org/debian buster/main amd64 Packages 500 http://security.debian.org/debian-security buster/updates/main amd64 Packages 500 http://deb.debian.org/debian buster/main amd64 Packages 500 http://deb.debian.org/debian-security buster/updates/main amd64 Packages iobroker@debian:~$ free -ht --mega total used free shared buff/cache available Mem: 7,9G 2,7G 3,9G 13M 1,2G 4,9G Swap: 4,0G 0B 4,0G Total: 11G 2,7G 7,9G iobroker@debian:~$@djsirius sagte in Javascript adapter geht immer von grün auf rot:
Aktualisierung für 16 Pakete verfügbar.
System auf Stand halten.
Im Log File steht was genau, wenn der Adapter (Neu)gestartet wird?Mit
iobroker logs --watchbeobachten.
-
@djsirius
Jedes Skript für sich ist ein separates Programm.
Wie gesagt, suche hier im Forum nach dem Stichwort
Dort sind links gepostet wie man die Stellen finden kann.Das entstehen von Memory leaks hat etwas mit dem automatischen Speicher Management von JavaScript und der fehlerhaften Anwendung von bestimmten Mustern zu tun
Ein beliebter Fehler sind die Timer
Du erzeugst mit onIntervsl oder onTimeout einen Timer.
Du erhältst eine id zurück mit der du diesen Timer wieder löschen kannst. Geht dir dieser verloren oder wird das Skript neu gestartet, dann existiert dieser Timer im Speicher immer noch ohne Möglichkeit den zu löschen (nur Neustart des Ja Adapters hilft hier)
Wenn jetzt diese Stelle zig Fach aufgerufen wird, dann sammelt sich dieser Müll im Speicher an und frisst deinen freien Speicher für diesen thread (nennt sich heap) weg.
Das selbe gilt auch für trigger (insbesondere trigger in trigger) -
Hallo,
seit heute geht der javascript adapter immer von grün auf rot. ich habe schon den debug mode angeschlatet, aber leider bekomme ich keine fehlermeldung.
was kann ich machen?
habe heute updates gemacht, und ich meine, dass der javascript adapter auch ein update bekommen hat.
vielen dank!
@djsirius sagte in Javascript adapter geht immer von grün auf rot:
Hallo,
seit heute geht der javascript adapter immer von grün auf rot.Was ist hiermit :
@thomas-braun sagte in Javascript adapter geht immer von grün auf rot:
@djsirius sagte in Javascript adapter geht immer von grün auf rot:Aktualisierung für 16 Pakete verfügbar.
System auf Stand halten.
Im Log File steht was genau, wenn der Adapter (Neu)gestartet wird?Mit
iobroker logs --watchbeobachten.
und zeige mal was du hast
habe heute updates gemacht, und ich meine, dass der javascript adapter auch ein update bekommen hat.
ich bin bei allen Adaptern auf dem aktuellen Stand.
BETA !???
iobroker update -i iobroker list instances -
@oliverio ok, dann war ich doch richtig, das habe ich jetzt gemacht.
Zusätzlich habe ich alle meine Scripts durchgesehen und die Timeouts bearbeitet. Ich hoffe, dass ich das auch richtig verstanden hab. Ich habe jetzt immer nach dem Timeout eine sonst mit stop Timeout eingesetzt!?
-
@oliverio ok, dann war ich doch richtig, das habe ich jetzt gemacht.
Zusätzlich habe ich alle meine Scripts durchgesehen und die Timeouts bearbeitet. Ich hoffe, dass ich das auch richtig verstanden hab. Ich habe jetzt immer nach dem Timeout eine sonst mit stop Timeout eingesetzt!?
@djsirius sagte in Javascript adapter geht immer von grün auf rot:
Ich habe jetzt immer nach dem Timeout eine sonst mit stop Timeout eingesetzt!?
Nicht ganz. Besser wäre (ist ein Beispiel):

Nach dem Trigger erstmal den Timeout stoppen und dieser Timeout wird dann nach "falls" ausgeführt.
-
@djsirius sagte in Javascript adapter geht immer von grün auf rot:
Ich habe jetzt immer nach dem Timeout eine sonst mit stop Timeout eingesetzt!?
Nicht ganz. Besser wäre (ist ein Beispiel):

Nach dem Trigger erstmal den Timeout stoppen und dieser Timeout wird dann nach "falls" ausgeführt.
-
@djmarc75 vielen Dank! Ich hatte ein Beispiel auf einem Screenshot gesehen, da wurde es so gemacht, wie ich es gemacht habe. Dann änder ich das nochmal ab.
@djsirius sagte in Javascript adapter geht immer von grün auf rot:
da wurde es so gemacht
Geht natürlich auch so, aber das "sonst" oder "sonst falls" kann man sich dann sparen. Ist aber nur als Beispiel zu verstehen. Skripte können miese Bazillen sein
kenn ich aus eigener Erfahrung
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
