NEWS
Node-red Adapter startet neu bei Zugriff auf Webinterface und/oder "Deploy"
-
Hallo Gemeinde,
hoffe ich habe den Thread an der richtigen Stelle abgeladen.
Ich lese schon sehr lange mit, habe aber nun das erste mal ein Problem, dass ich ohne weitere Hilfe so nicht gelöst bekomme.
Zum Punkt:
Mein iobroker läuft auf einer VM mit Debian.
Das läuft schon sehr lang einwandfrei.
Vor nicht langer Zeit kam das Update des js-controller auf die 1.12.
Danach wollte der node-red Adapter, denke das war die 1.16, nicht mehr starten.
Nach länglicher Fehlersuche habe ich aufgegeben und die 1.40 direkt von github installiert.
Das lief dann Wochenlang ohne Störungen.
Nun, seit ein paar Tagen, ohne vorangegangene Änderung an Einstellungen oder System,
startet der Adapter bei nahezu jedem node-red WebInterfaceaufruf neu.
Änderungen Deploy-en kann ich auch nicht mehr, da er sich dann auch verabschiedet.
Habe node-red 1.16 ausprobiert, läuft.
Es fehlen aber "Dinge", dass einige flows nicht mehr laufen.
Bei 1.20 dauernde Restart-Schleife.
Bei 1.40 im debug-Modus kommen folgende Meldungen im log:
` > node-red.0 2017-09-05 14:04:59.106 warn FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
node-red.0 2017-09-05 14:04:59.103 debug <–- JS stacktrace ---> ==== JS stack trace ========================================= Security context: 0x230859737399 2: getMessageProperty [/opt/iobroker/node_modules/iobroker.nod
node-red.0 2017-09-05 14:04:59.101 debug <--- Last few GCs ---> 4414228 ms: Scavenge 123.9 (166.5) -> 123.9 (166.5) MB, 0.4 / 0 ms (+ 5.1 ms in 1 steps since last GC) [allocation failure] [incremental marking delaying mark-sweep]. 441437 `
Arbeitsspeicher ist von iobroker zu 52% belegt (ca. 1GB).
In der Instanzübersicht läuft node-red mit 39,5 MB.
Vielleicht hat ja jemand eine Idee, wie man dem Problem auf die Schliche kommt.
Gruß Niko
-
Hallo Gemeinde,
hoffe ich habe den Thread an der richtigen Stelle abgeladen.
Ich lese schon sehr lange mit, habe aber nun das erste mal ein Problem, dass ich ohne weitere Hilfe so nicht gelöst bekomme.
Zum Punkt:
Mein iobroker läuft auf einer VM mit Debian.
Das läuft schon sehr lang einwandfrei.
Vor nicht langer Zeit kam das Update des js-controller auf die 1.12.
Danach wollte der node-red Adapter, denke das war die 1.16, nicht mehr starten.
Nach länglicher Fehlersuche habe ich aufgegeben und die 1.40 direkt von github installiert.
Das lief dann Wochenlang ohne Störungen.
Nun, seit ein paar Tagen, ohne vorangegangene Änderung an Einstellungen oder System,
startet der Adapter bei nahezu jedem node-red WebInterfaceaufruf neu.
Änderungen Deploy-en kann ich auch nicht mehr, da er sich dann auch verabschiedet.
Habe node-red 1.16 ausprobiert, läuft.
Es fehlen aber "Dinge", dass einige flows nicht mehr laufen.
Bei 1.20 dauernde Restart-Schleife.
Bei 1.40 im debug-Modus kommen folgende Meldungen im log:
` > node-red.0 2017-09-05 14:04:59.106 warn FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
node-red.0 2017-09-05 14:04:59.103 debug <–- JS stacktrace ---> ==== JS stack trace ========================================= Security context: 0x230859737399 2: getMessageProperty [/opt/iobroker/node_modules/iobroker.nod
node-red.0 2017-09-05 14:04:59.101 debug <--- Last few GCs ---> 4414228 ms: Scavenge 123.9 (166.5) -> 123.9 (166.5) MB, 0.4 / 0 ms (+ 5.1 ms in 1 steps since last GC) [allocation failure] [incremental marking delaying mark-sweep]. 441437 `
Arbeitsspeicher ist von iobroker zu 52% belegt (ca. 1GB).
In der Instanzübersicht läuft node-red mit 39,5 MB.
Vielleicht hat ja jemand eine Idee, wie man dem Problem auf die Schliche kommt.
Gruß Niko `
node.js Version? -
node Version: v.4.8.4
Habe nun eine ältere VM hervorgekramt mit:
iobrokerAdmin v1.7.6
ioBroker.js-controller v 1.0.3
node v4.8.4
node-red 1.2.0
Alle anderen Adapter usw. aktuell.
Läuft bisher prima, werde mir den Zustand nun sichern, und dann
den Admin und den ioBroker.js-controller nacheinander updaten.
Sollte ich, falls möglich, irgendwelche Vorgehensweisen bezüglich Reihenfolge und/oder Versionssprünge beachten?
Gruß Niko
-
Immer erst den controller, dann den admin, dann den Rest
Gruß
Rainer
-
So,
seit ca. 2 Tagen Läuft o.g. VM nun mit ioBroker.js-controller 1.1.2 fehlerfrei.
Sonst keine weiteren Änderungen gemacht.
Heute werde ich dann den iobrokerAdmin von v1.7.6 auf 2.0.2 updaten und beobachten was passiert.
Ein paar Tage später werde ich den node-red Adapter noch auf die aktuelle 1.4.0 ziehen.
Gruß Niko
-
So gerade eben wollte ich noch eine Änderung in node-red deployen,
zack ….Neustart.
` > node-red.0 2017-09-18 20:07:18.545 warn 18 Sep 20:07:18 - [warn] –----------------------------------------------------
node-red.0 2017-09-18 20:07:18.542 warn 18 Sep 20:07:18 - [warn] [rpi-gpio] Info : Ignoring Raspberry Pi specific node
node-red.0 2017-09-18 20:07:18.539 warn 18 Sep 20:07:18 - [warn] –----------------------------------------------------
node-red.0 2017-09-18 20:07:17.618 warn Mon, 18 Sep 2017 18:07:17 GMT node-telegram-bot-api deprecated Node.js v5.x and below will no longer be supported in the future at module.js:409:26
node-red.0 2017-09-18 20:07:15.135 warn 18 Sep 20:07:15 - [warn]
node-red.0 2017-09-18 20:07:14.017 info Starting node-red: –max-old-space-size=128 /opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js
node-red.0 2017-09-18 20:07:13.326 info starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.node-red, node: v4.8.4
host.iobrokerVM 2017-09-18 20:07:12.433 info instance system.adapter.node-red.0 started with pid 1961
host.iobrokerVM 2017-09-18 20:07:11.420 info Restart adapter system.adapter.node-red.0 because enabled
host.iobrokerVM 2017-09-18 20:07:11.418 error instance system.adapter.node-red.0 terminated with code 0 (OK)
node-red.0 2017-09-18 20:06:39.014 warn 18 Sep 20:06:39 - [warn] –----------------------------------------------------
node-red.0 2017-09-18 20:06:39.011 warn 18 Sep 20:06:39 - [warn] [rpi-gpio] Info : Ignoring Raspberry Pi specific node
node-red.0 2017-09-18 20:06:39.006 warn 18 Sep 20:06:39 - [warn] –----------------------------------------------------
node-red.0 2017-09-18 20:06:38.162 warn Mon, 18 Sep 2017 18:06:38 GMT node-telegram-bot-api deprecated Node.js v5.x and below will no longer be supported in the future at module.js:409:26
node-red.0 2017-09-18 20:06:36.659 warn 18 Sep 20:06:36 - [warn]
node-red.0 2017-09-18 20:06:36.048 info Starting node-red: –max-old-space-size=128 /opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red/red.js -v --settings /opt/iobroker/iobroker-data/node-red/settings.js
node-red.0 2017-09-18 20:06:31.044 info node-red exited with null
node-red.0 2017-09-18 20:06:31.024 warn FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
node-red.0 2017-09-18 20:06:30.737 info Save /opt/iobroker/iobroker-data/node-red/flows.json
admin.0 2017-09-18 20:05:16.612 info successful connection to socket.io from ::ffff:192.168.178.10 `
Alle meine flows sind weg. Also die flows.json fehlt nach dem Neustart von node-red:
` > drwxrwxrwx 3 root root 4096 Sep 18 20:06 .
drwxrwxrwx 6 root root 4096 Mai 14 13:04 ..
-rwxrwxrwx 1 root root 26032 Mai 14 13:04 .config.json
-rw-rw-rw- 1 root root 3676 Sep 18 20:09 flows_cred.json
-rwxrwxrwx 1 root root 3444 Sep 17 12:38 .flows_cred.json.backup
-rw-rw-rw- 1 root root 370630 Sep 18 11:58 .flows.json.backup
drwxrwxrwx 4 root root 4096 Jul 16 12:23 lib
-rwxrwxrwx 1 root root 7727 Sep 18 20:09 settings.js
iobrokerVM:/opt/iobroker/iobroker-data/node-red$ `
Ist meine flows.json zu groß?
Bin ratlos..
Gruß Niko
-
Habe jetzt den Zustand von heute morgen geladen,
selbe Änderung im node-red gemacht wie vorhin..
Keine Probleme.
Zusammenfassung:
ioBroker.js-controller 1.1.2
ioBroker Admin 2.0.2
node-red Adapter 1.2.0
–-> "process out of memory"
ioBroker.js-controller 1.1.2
ioBroker Admin 1.7.6
node-red Adapter 1.2.0
---> Läuft sauber durch
Gruß Niko
-
Habe jetzt den Zustand von heute morgen geladen,
selbe Änderung im node-red gemacht wie vorhin..
Keine Probleme.
Zusammenfassung:
ioBroker.js-controller 1.1.2
ioBroker Admin 2.0.2
node-red Adapter 1.2.0
–-> "process out of memory"
ioBroker.js-controller 1.1.2
ioBroker Admin 1.7.6
node-red Adapter 1.2.0
---> Läuft sauber durch
Gruß Niko `
Und was sagt "top" dazu? -
Ich werde jetzt nochmal admin aktualisieren und versuchen von "top" ein paar Daten zu bekommen.
-
welche Prozesse sind im speziellen Interessant ?
Log nun mal diese mit:
` > top - 11:45:03 up 1 day, 14:00, 3 users, load average: 0,21, 0,30, 0,27Tasks: 4 total, 0 running, 4 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3,1 us, 2,7 sy, 0,0 ni, 94,2 id, 0,0 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem: 4058976 total, 2434308 used, 1624668 free, 223540 buffers
KiB Swap: 0 total, 0 used, 0 free. 751780 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
8266 root 20 0 1176004 71780 16428 S 1,7 1,8 0:43.80 io.admin.0
8049 root 20 0 1254764 77344 16096 S 1,7 1,9 0:43.09 iobroker.js-con
8218 root 20 0 1323236 152412 17008 S 1,3 3,8 1:57.79 node-red
8205 root 20 0 1018732 43608 15092 S 0,3 1,1 0:01.54 io.node-red.0 `
Falls noch mehr von Interesse sind, bitte bescheidschreiben.
Gruß Niko
-
Seltsamer Weise läuft das System seither Anstandslos durch.
Werde heute den Admin mal auf die 2.0.4 ziehen.
Gruss Niko