NEWS
[adressiert] system.adapter.javascript.0 terminated bei "kleinem Fehler"
-
Ich habe die Vermutung, dass die bereits existierenden Fehlerbehandlungen nicht greifen, wenn der Fehler in einer Callback-Funktion auftritt, die nicht direkt vom Usercode aufgerufen wird - in deinem Fall vom "fs"-Modul.
-
Bitte mal testen ob mein Fix funktioniert hat:
=> Installation von Github, eigene Quelle````
https://github.com/ioBroker/ioBroker.javascript/tarball/catch-callback-errors=> Adapter neu starten.
-
Hi AlCalzone,
vielen Dank für Deine schnelle Hilfe!
Deinen Fix habe ich installiert, und den Adapter neu gestartet. Dabei fällt übrigens folgende Zeile beim Adapter-Start auf:
javascript.0 2018-07-27 18:46:31.418 error : message handler implemented, but messagebox not enabled. Define common.messagebox in io-package.json for adapter or delete message handler.
Habe es dann getestet:
Leider ohne Erfolg, d.h. es passiert wie oben stehend. Ich habe auch mal "log(xyz);" in ein anderes längeres Script kopiert (siehe https://github.com/Mic-M/iobroker.geofency-php/), dort in eine Schleife, die ein Array abarbeitet. Wieder Absturz des Adapters, hier der Log:
! ````
host.raspberrypi 2018-07-27 18:55:31.233 info Restart adapter system.adapter.javascript.0 because enabled
host.raspberrypi 2018-07-27 18:55:31.233 error instance system.adapter.javascript.0 terminated with code 0 (OK)
Caught 2018-07-27 18:55:31.233 error by controller[0]: at emitNone (events.js:91:20)
Caught 2018-07-27 18:55:31.233 error by controller[0]: at IncomingMessage.g (events.js:292:16)
Caught 2018-07-27 18:55:31.233 error by controller[0]: at IncomingMessage. <anonymous>(/opt/iobroker/node_modules/request/request.js:1079:12)
Caught 2018-07-27 18:55:31.233 error by controller[0]: at Request.emit (events.js:188:7)
Caught 2018-07-27 18:55:31.232 error by controller[0]: at emitOne (events.js:96:13)
Caught 2018-07-27 18:55:31.232 error by controller[0]: at Request. <anonymous>(/opt/iobroker/node_modules/request/request.js:1157:10)
Caught 2018-07-27 18:55:31.232 error by controller[0]: at Request.emit (events.js:191:7)
Caught 2018-07-27 18:55:31.232 error by controller[0]: at emitTwo (events.js:106:13)
Caught 2018-07-27 18:55:31.232 error by controller[0]: at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
Caught 2018-07-27 18:55:31.231 error by controller[0]: at Request._callback (script.js.M-Scripts-RunAtStartup.m-scr-Geofency:631:5)
Caught 2018-07-27 18:55:31.223 error by controller[0]: ReferenceError: xyz is not defined
javascript.0 2018-07-27 18:55:31.084 info terminating
javascript.0 2018-07-27 18:55:31.059 error at emitNone (events.js:91:20)
javascript.0 2018-07-27 18:55:31.059 error at IncomingMessage.g (events.js:292:16)
javascript.0 2018-07-27 18:55:31.058 error at IncomingMessage. <anonymous>(/opt/iobroker/node_modules/request/request.js:1079:12)
javascript.0 2018-07-27 18:55:31.058 error at Request.emit (events.js:188:7)
javascript.0 2018-07-27 18:55:31.058 error at emitOne (events.js:96:13)
javascript.0 2018-07-27 18:55:31.057 error at Request. <anonymous>(/opt/iobroker/node_modules/request/request.js:1157:10)
javascript.0 2018-07-27 18:55:31.057 error at Request.emit (events.js:191:7)
javascript.0 2018-07-27 18:55:31.056 error at emitTwo (events.js:106:13)
javascript.0 2018-07-27 18:55:31.056 error at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
javascript.0 2018-07-27 18:55:31.055 error at Request._callback (script.js.M-Scripts-RunAtStartup.m-scr-Geofency:95:5)
javascript.0 2018-07-27 18:55:31.054 error script.js.M-Scripts-RunAtStartup.m-scr-Geofency: ReferenceError: xyz is not defined
javascript.0 2018-07-27 18:55:31.049 error at emitNone (events.js:91:20)
javascript.0 2018-07-27 18:55:31.049 error at IncomingMessage.g (events.js:292:16)
javascript.0 2018-07-27 18:55:31.049 error at IncomingMessage. <anonymous>(/opt/iobroker/node_modules/request/request.js:1079:12)
javascript.0 2018-07-27 18:55:31.049 error at Request.emit (events.js:188:7)
javascript.0 2018-07-27 18:55:31.049 error at emitOne (events.js:96:13)
javascript.0 2018-07-27 18:55:31.049 error at Request. <anonymous>(/opt/iobroker/node_modules/request/request.js:1157:10)
javascript.0 2018-07-27 18:55:31.049 error at Request.emit (events.js:191:7)
javascript.0 2018-07-27 18:55:31.049 error at emitTwo (events.js:106:13)
javascript.0 2018-07-27 18:55:31.049 error at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
javascript.0 2018-07-27 18:55:31.049 error at Request._callback (script.js.M-Scripts-RunAtStartup.m-scr-Geofency:631:5)
javascript.0 2018-07-27 18:55:31.049 error ReferenceError: xyz is not defined
javascript.0 2018-07-27 18:55:31.048 error uncaught exception: xyz is not defined
javascript.0 2018-07-27 18:55:25.950 info script.js.M-Scripts-RunAtStartup.m-scr-Geofency: registered 0 subscriptions and 0 schedules</anonymous></anonymous></anonymous></anonymous></anonymous></anonymous>Bitte sag Bescheid, falls Du noch weitere Infos brauchst…
-
Kannst du versuchen, dein Problem mit einem Minimal-Skript zu reproduzieren? Habe ebenfalls die Version installiert und Fehler in Callbacks crashen den Adapter nicht mehr bei mir.
// geht: throw new Error("foo"); // geht auch: setTimeout(() => { throw new Error("foo"); }, 3000);
-
Hi AlCalzone,
ich hatte mittlerweile den JavaScript-Adapter deinstalliert und neu installiert mit Version 3.7.0.
Das hat vermutlich dann auch Deinen Fix (https://github.com/ioBroker/ioBroker.ja … ack-errors) entfernt, oder?
Habe jetzt mal ohne getestet:
Bei Deinen Beispielen stürzt der Adapter nicht ab. Ebenso stürzt er auch nicht ab z.B. mit folgendem Skript:
var flattened = [[0, 1], [2, 3], [4, 5]].reduce(function (a, b) { log(xyz); return a.concat(b); }); log("Ergebnis von 'flattened': " + flattened); // => [0, 1, 2, 3, 4, 5]
Z.B. bei meinem Log-Script (https://github.com/Mic-M/iobroker.logfile-script) jedoch schon, Auszug:
// Reads the log file entry, result will be string in variable "data" var fs = require('fs'); fs.readFile(strFullLogPath, 'utf8', function (err,data) { log(xyz); if (err) { return L_Log2(err, 'error'); }
Falls hier die Zeile "log(xyz);" außerhalb von "fs.readFile…" steht, dann stürzt er nicht ab:
// Reads the log file entry, result will be string in variable "data" var fs = require('fs'); log(xyz); fs.readFile(strFullLogPath, 'utf8', function (err,data) { if (err) { return L_Log2(err, 'error'); }
-
Danke das hilft. Anscheinend liegt das Problem daran, dass der js-controller nicht mitbekommt dass der Fehler abgefangen wurde. Ich schaue mal was sich machen lässt.
-
Kleines Update:
Ich habe 2 PRs erstellt, die zusammen das Problem lösen sollten. Allerdings bedeutet dass, dass es erst in der nächsten Version des JS-Controllers funktionieren wird.
-
Super, vielen Dank!
-
Hallo zusammen,
leider bekomme ich diesen Fehler auch. Habt ihr eine Idee?
Das hier ist nur ein Stück der Log, weil sie sich immer wiederholt.javascript.0 2020-04-17 11:01:25.494 warn (3251) Got terminate signal. Checking desired PID: 3275 vs own PID 3251 javascript.0 2020-04-17 11:01:25.487 info (3251) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason javascript.0 2020-04-17 11:01:25.486 info (3251) terminating javascript.0 2020-04-17 11:01:25.482 info (3251) Stop script script.js.Visualisierung.FarbeTuerenVisu javascript.0 2020-04-17 11:01:25.481 info (3251) Stop script script.js.Visualisierung.FarbeFensterVisu javascript.0 2020-04-17 11:01:25.477 info (3251) Stop script script.js.Visualisierung.StatusTuerFenster javascript.0 2020-04-17 11:01:25.471 info (3251) Stop script script.js.KNX_Zeit javascript.0 2020-04-17 11:01:25.466 warn (3251) Got terminate signal. Checking desired PID: 0 vs own PID 3251 javascript.0 2020-04-17 11:01:22.859 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.859 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.858 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.858 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.858 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.857 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeTuerenVisu:1037:158) javascript.0 2020-04-17 11:01:22.856 warn (3251) getState "upnp.0.WANConnectionDevice_-_FRITZ!Box_7490.WANDevice.WANConnectionDevice.WANIPConnection.GetStatusInfo.NewConnectionStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:22.855 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.855 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.855 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.854 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.854 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.853 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeTuerenVisu:1037:14) javascript.0 2020-04-17 11:01:22.852 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:22.852 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.851 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.851 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.850 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.850 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.849 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeTuerenVisu:1035:7) javascript.0 2020-04-17 11:01:22.847 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:22.820 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.820 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.819 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.819 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.819 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.818 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeFensterVisu:1037:158) javascript.0 2020-04-17 11:01:22.817 warn (3251) getState "upnp.0.WANConnectionDevice_-_FRITZ!Box_7490.WANDevice.WANConnectionDevice.WANIPConnection.GetStatusInfo.NewConnectionStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:22.817 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.816 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.816 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.815 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.815 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.815 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeFensterVisu:1037:14) javascript.0 2020-04-17 11:01:22.813 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:22.813 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:22.812 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:22.812 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:22.811 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:22.811 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:22.810 warn (3251) at Object.<anonymous> (script.js.Visualisierung.FarbeFensterVisu:1035:7) javascript.0 2020-04-17 11:01:22.808 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:21.728 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:21.728 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:21.727 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:21.726 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:21.726 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:21.725 warn (3251) at Object.<anonymous> (script.js.Visualisierung.StatusTuerFenster:1037:158) javascript.0 2020-04-17 11:01:21.724 warn (3251) getState "upnp.0.WANConnectionDevice_-_FRITZ!Box_7490.WANDevice.WANConnectionDevice.WANIPConnection.GetStatusInfo.NewConnectionStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:21.724 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:21.723 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:21.723 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:21.722 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:21.722 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:21.721 warn (3251) at Object.<anonymous> (script.js.Visualisierung.StatusTuerFenster:1037:14) javascript.0 2020-04-17 11:01:21.720 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:21.720 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:21.719 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:21.719 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:21.718 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:21.716 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:21.712 warn (3251) at Object.<anonymous> (script.js.Visualisierung.StatusTuerFenster:1035:7) javascript.0 2020-04-17 11:01:21.709 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:20.960 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:20.960 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:20.959 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:20.959 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:20.958 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:20.958 warn (3251) at Object.<anonymous> (script.js.KNX_Zeit:1037:158) javascript.0 2020-04-17 11:01:20.956 warn (3251) getState "upnp.0.WANConnectionDevice_-_FRITZ!Box_7490.WANDevice.WANConnectionDevice.WANIPConnection.GetStatusInfo.NewConnectionStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:20.956 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:20.955 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:20.954 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:20.954 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:20.953 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:20.952 warn (3251) at Object.<anonymous> (script.js.KNX_Zeit:1037:14) javascript.0 2020-04-17 11:01:20.951 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:20.950 warn (3251) at Timer.processTimers (timers.js:223:10) javascript.0 2020-04-17 11:01:20.950 warn (3251) at listOnTimeout (timers.js:263:5) javascript.0 2020-04-17 11:01:20.949 warn (3251) at tryOnTimeout (timers.js:300:5) javascript.0 2020-04-17 11:01:20.949 warn (3251) at ontimeout (timers.js:438:13) javascript.0 2020-04-17 11:01:20.949 warn (3251) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1984:34) javascript.0 2020-04-17 11:01:20.948 warn (3251) at Object.<anonymous> (script.js.KNX_Zeit:1035:7) javascript.0 2020-04-17 11:01:20.939 warn (3251) getState "upnp.0.WANDevice_-_FRITZ!Box_7490.WANDevice.WANCommonInterfaceConfig.GetCommonLinkProperties.NewPhysicalLinkStatus" not found (3) states[id]=null javascript.0 2020-04-17 11:01:12.847 info (3251) script.js.Visualisierung.FarbeTuerenVisu: registered 1 subscription and 4 schedules javascript.0 2020-04-17 11:01:12.806 info (3251) Start javascript script.js.Visualisierung.FarbeTuerenVisu javascript.0 2020-04-17 11:01:12.805 info (3251) script.js.Visualisierung.FarbeFensterVisu: registered 1 subscription and 4 schedules javascript.0 2020-04-17 11:01:12.754 info (3251) Start javascript script.js.Visualisierung.FarbeFensterVisu javascript.0 2020-04-17 11:01:12.753 info (3251) script.js.Visualisierung.StatusTuerFenster: registered 19 subscriptions and 4 schedules javascript.0 2020-04-17 11:01:11.662 info (3251) Start javascript script.js.Visualisierung.StatusTuerFenster javascript.0 2020-04-17 11:01:10.944 info (3251) script.js.KNX_Zeit: registered 0 subscriptions and 5 schedules javascript.0 2020-04-17 11:01:10.863 info (3251) Start javascript script.js.KNX_Zeit javascript.0 2020-04-17 11:01:02.893 info (3251) received all states javascript.0 2020-04-17 11:01:02.727 info (3251) received all objects javascript.0 2020-04-17 11:00:54.721 warn (3223) Got terminate signal. Checking desired PID: 3251 vs own PID 3223
-
Hab den Fehler gefunden. Hier wurde etwas vom TR-064 Adapter nicht abgerufen.