NEWS
js-controller 5.0.x jetzt für alle User im STABLE!
-
Im Log werden mir nach der Deinstallation des Sonos-Adapters keine Meldungen mehr dbzgl. ausgegeben, daher gehe ich nicht davon aus. Der Fehler tritt wohl beim Backup der Influxdb2 auf, da das temporäre Verzeichnis davon übrig bleibt. Die ist gepackt ca. 1GB groß. Mein System hat allerdings genug Reserven (16GB RAM) und der Fehler tritt erst seit JS-Controller 5 auf.
-
@ofbeqnpolkkl6mby5e13 Führe mal bitte das Skript aus und schau welche IDs geloggt werden.
(() => { $('*').each(async id => { try { const obj = await getObjectAsync(id); if (obj.binary) { log(id, 'warn'); } } catch { // ignore } }) })();
-
@foxriver76 sagte in js-controller 5.0.x jetzt für alle User im STABLE!:
2023-09-26 08:46:11.322 - [32minfo[39m: javascript.0 (16432) Start javascript script.js.common._Tests.Test_6 2023-09-26 08:46:12.429 - [32minfo[39m: javascript.0 (16432) script.js.common._Tests.Test_6: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 2023-09-26 08:46:16.104 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "alexa2.0" can't be copied: {} 2023-09-26 08:46:17.665 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "hue-sync-box.0" can't be copied: {} 2023-09-26 08:46:18.086 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "nanoleaf-lightpanels.0" can't be copied: {} 2023-09-26 08:46:18.088 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "nanoleaf-lightpanels.1" can't be copied: {} 2023-09-26 08:46:18.102 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "nuki-extended.0" can't be copied: {} 2023-09-26 08:46:18.215 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.deyeidc.upload" can't be copied: {} 2023-09-26 08:46:18.243 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.alive" can't be copied: {} 2023-09-26 08:46:18.243 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.compactMode" can't be copied: {} 2023-09-26 08:46:18.244 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.connected" can't be copied: {} 2023-09-26 08:46:18.244 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.cpu" can't be copied: {} 2023-09-26 08:46:18.245 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.cputime" can't be copied: {} 2023-09-26 08:46:18.245 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.inputCount" can't be copied: {} 2023-09-26 08:46:18.246 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.logLevel" can't be copied: {} 2023-09-26 08:46:18.247 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.memHeapTotal" can't be copied: {} 2023-09-26 08:46:18.247 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.memHeapUsed" can't be copied: {} 2023-09-26 08:46:18.248 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.memRss" can't be copied: {} 2023-09-26 08:46:18.248 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.outputCount" can't be copied: {} 2023-09-26 08:46:18.249 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.sigKill" can't be copied: {} 2023-09-26 08:46:18.249 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "system.adapter.vis.0.uptime" can't be copied: {} 2023-09-26 08:46:18.271 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "tuya.0" can't be copied: {} 2023-09-26 08:46:18.276 - [31merror[39m: javascript.0 (16432) script.js.common._Tests.Test_6: Object "unifi.0" can't be copied: {}
-
@ofbeqnpolkkl6mby5e13 Hm okay, kp was javascript da intern treibt. Ich schaue nochmal obs ne andere Variante gibt die binary states zu finden. Dachte eigentlich Admin könnte filtern - leider nicht.
-
@foxriver76
Ich habe mir gestern jetzt mal die Mühe gemacht, alle möglichen Varianten (Adapterversionen / Js-Controler auf 4 und 5) durch zu spielen mit folgenden Erkenntinissen:-
Socket / Web / Ws Adapter aktuell, Controller auf V4... (im Webadapter auf intern gestellt und Websockets angehackt)
Probleme in Vis treten erst nach einiger Zeit auf, betrifft hauptsächlich CSS - Eigentschaften und Bindings
Beispielsweise habe ich auf meinem "Homescreen" ein graues Kästchen welches ich bei eine Systemmeldung über CSS
als Overlay über den ganzen Bildschirm strecke. Dies funktioniert Anfangs und nach einer gewissen Zeit wird nur noch der
Text oben Links wo im Editor das Kästchen mit deaktivierten Css-Eigenschaften liegt angezeigt. -
Socket / Web / Ws Adapter aktuell ebenso der Controller auf V5 (im Webadapter auf ws gestellt da es sonst nicht geht)
Das oben beschriebene Problem tritt nach ca. 5 Minuten kontinuierlich auf. Reload des Projekts behebt das Problem für
wieder ca. 5 Minuten. -
Socket / Web /Ws Adapter auf den Vorversionen und Controller auf V4
keine Probleme vorhanden.
Da mir das Zusammenspiel der einzelnen Adapter nicht klar ist und ich auch nicht sagen kann welchen Einfluss der Js-Controller auf das Thema hat, wüsste ich auch garnicht bei welchem Adapter ich hier ein Issue eröffnen sollte.
Wenn es mir jedoch jemand erklärt mache ich das natürlich sehr gerne. -
-
@peoples und ob die webinstanz ws oder socketio nutzt macht kein Unterschied im Verhalten? Und irgendwie https im Spiel? ICh kann es nicht nachstellen und es ist nicht trivial herauszufinden woran es liegen könnte, daher möglichst viele Infos bitte. Controller würde ich eher ausschließen, da wie du sagst auch ohne neuen Controller passiert (auch wenn es laut deinen Tests häufiger auftritt).
-
(async () => { $('*').each(async id => { try { const state = await getBinaryStateAsync(id) try { if (state) { JSON.parse(state.toString()) } } catch (e) { log('Binary state found: ' + id, 'error') } } catch { // ignore } }) })();
Macht er das oder meckert er da auch?
-
@foxriver76 sagte in js-controller 5.0.x jetzt für alle User im STABLE!:
(async () => {
Kein Fehler, aber jetzt ist das Log 12MB groß (kein Vorwurf!), weil er jeden State als Binary erkennt.
-
@ofbeqnpolkkl6mby5e13 Kannst du mir das Log bereitstellen?
-
Selbstverständlich. Wie?
-
@ofbeqnpolkkl6mby5e13 12 MB könnten evtl noch per Mail gehen: moritz.heusinger@gmail.com
Ansonsten villt eifnach ein File Upload (https://easyupload.io/) und mir den Link schicken falls du keine Bedenken hast
-
Ist ja nur Text. Gepackt keine 300kb groß.
-
@ofbeqnpolkkl6mby5e13 Ok, passt ne keine Binary States würde ich sagen. Das Log für jeden State kommt vom controller bei jedem Aufruf von
binary
Methoden. Und die Node Version bei dir war welche? -
18.16.0
-
@ofbeqnpolkkl6mby5e13 hm magst du mal innerhalb der 18er Range upgraden um auszuschließen dass es daran liegt - ich vermute wenn nach Vorgaben installiert sollte ein
sudo apt update && sudo apt upgrade
zur Aktualisierung ausrecihen. Ansonsten bliebe noch das ich probiere es mit deinem Backup nachzustellen, aber aktuell fehlt mir leider jeder Anhaltspunkt. -
-
@ofbeqnpolkkl6mby5e13 aktuelle LTS wäre 18.18.0
ansonsten wie gesagt, ich kann probieren es mit deinem System nachzustellen, wenn du mir ein Backup zukommen lässt und rein debuggen. Ansonsten keine Idee und wie gesagt eher selten und bei anderen lag es meist an den übergebliebenen Binary States.
-
Ich bringe mein System erst mal auf Stand.
Bin jetzt auf:
Node.js: v18.17.1
NPM: 9.6.7und beobachte.
-
@ofbeqnpolkkl6mby5e13 sagte in js-controller 5.0.x jetzt für alle User im STABLE!:
Scheint im MQTT-Adapter selbst auch nicht komplett abgefangen zu werden:
2023-09-15 00:37:44.321 - [31merror[39m: mqtt.0 (456) Client [DVES_990210] Cannot parse "stat/tasmota_990210/STATUS11": {"StatusSTS":{"Time":"2023-09-14T23:37:34","Uptime":"100T16:49:22","UptimeSec":8700562,"Heap":19,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":24,"POWER":"OFF","Wifi":{"AP":1,"SSId":"***","BSSId":"***","Channel":1,"Mode":"11n","RSSI":62,"Signal":-69,"LinkCount":8,"Downtime":"0T00� stat/t
Um auch noch mal auf dieses Thema zurückzukommen. Ich erhalte für nahezu jedes Tasmota-Gerät eine solche Meldung beim Subscribe.
-
@ofbeqnpolkkl6mby5e13 Hm was hat das mit Controller zu tun? Er möchte die Message als JSON parsen, aber es scheint kein vollständiges JSON zu sein. Da hat Controller nix mit zu tun
https://github.com/ioBroker/ioBroker.mqtt/blob/4491114d4819ce65d2baf68f063d3eb169390d0d/lib/common.js#L179