Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. js-controller 3.2 jetzt im STABLE!

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

js-controller 3.2 jetzt im STABLE!

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
275 Beiträge 58 Kommentatoren 86.0k Aufrufe 51 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • apollon77A apollon77

    @ofbeqnpolkkl6mby5e13 In dam Fall nehme ich alles zurück ... Wir hatten gestern die Devs abgefragt was ins Stable muss und da wurde der wohl übersehen :-)

    O Abwesend
    O Abwesend
    oFbEQnpoLKKl6mbY5e13
    schrieb am zuletzt editiert von
    #18

    @apollon77
    Kein Problem! :+1:

    1 Antwort Letzte Antwort
    0
    • apollon77A apollon77

      @ofbeqnpolkkl6mby5e13 In dam Fall nehme ich alles zurück ... Wir hatten gestern die Devs abgefragt was ins Stable muss und da wurde der wohl übersehen :-)

      A Online
      A Online
      Ahnungsbefreit
      schrieb am zuletzt editiert von
      #19

      @apollon77 ...und schon ist das Update in Stable! Jungs, Ihr seid der Hammer!!!

      Wenn meine Antwort hilfreich war, dürft Ihr das gerne durch einen "Upvote" (der kleine "^" unten rechts) zum Ausdruck bringen.

      1 Antwort Letzte Antwort
      0
      • apollon77A apollon77

        Hallo ioBroker-Community,

        mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die in der letzten Zeit diese Version bereits im Beta- und Latest-Test getestet und Probleme und Fehler zur Behebung gemeldet haben!

        Node.js Versions-Anforderungen
        Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
        Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625

        Informationen zur Version
        Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
        Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.

        Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
        Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.

        In Summe sind in diese Version über 750 commits eingeflossen. Dafür bedanke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!

        Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Was es bei Multihost Systemen zu beachten gibt findet Ihr etwas weiter unten! Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂

        Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.


        Installation


        VOR der Installation

        Wie bei jedem Test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder per npm install iobroker.js-controller@version installiert werden und sollte alles wieder herstellen.

        Nötige Adapter-Aktualisierungen

        Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:

        • ioBroker.lovelace 1.4.1 oder höher
        • ioBroker.simple-api 2.5.2 oder höher
        • ioBroker.socketio 3.1.3 oder höher
        • ioBroker.telegram 1.7.0 oder höher
        • ioBroker.web 3.2.2 oder höher
        • ioBroker.admin 4.2.1 oder höher

        Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.

        Achtung: Multihost-Systeme Reihenfolgen beachten!

        Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 nötig, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!

        Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!

        Windows

        Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.

        Für alle "alten manuellen" Installationen gilt

        • ioBroker muss gestoppt sein.
        • Vor dem Update bitte prüfen das keine Prozesse mehr laufen
        • iobroker update
        • iobroker upgrade self
        • ioBroker starten

        Linux

        • ioBroker stoppen (iobroker stop)
        • prüfen das keine Prozesse (Adapter, Backups) mehr laufen (ps auxww|grep io und auch ps auxww|grep backup ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben
        • iobroker update
        • Wie üblich wird das Update dann per iobroker upgrade self ausgeführt.
        • ioBroker starten (iobroker start)

        Bei Fehlern:
        Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fix wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
        Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install iobroker.js-controller versuchen. Bitte berichtet solche Fälle hier im Thread.

        NACH der Installation

        Nach der Installation den ioBroker wieder starten (z.B. mittels iobroker start).

        Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.

        Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!

        Mit iobroker help wird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)


        Was hat sich geändert, was besonders ansehen/beachten?


        Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:

        • generell siehe Changelog, speziell auch für Features
        • Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
        • Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden

        Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten

        Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


        BREAKING CHANGES

        • None, Supported are nodejs 10.x, 12.x and 14.x (Node.js 15.x is also working WHEN USED WITH npm 6!! in the automated tests, but formally not supported)
        • If you have enabled Multihost Discovery please disable and enable it again if you really need it persistent running. By re-enabling it you update the used passphrase with a better encryption mechanism.
        • (Foxriver76) Harmonize username handling between admin and js-controller by transforming the object id to lowercase. With this user names will be treated case insensitive from now on!

        Features

        • (raintonr) Update Let's encrypt implementation; all relevent adapters (web and such) need updates to use it! NEEDS NODE.JS 12.x+! (see DOCS LINK TODO)
        • (bluefox) Restart adapters that use Let's encrypt after certificates were updated
        • (bluefox) Provide min/max for convert alias functions
        • (foxriver76) handling major adapter upgrades more carefully (CLI on upgrade will show if it's a major upgrade and major upgrades will be skipped on upgrade all when executed by admin
        • (AlCalzone) detect and allow short github URL format when (auto-)installing adapters (iobroker url User/repo#branchorcommit)
        • (AlCalzone) Support more Github URL formats for iobroker url command
        • (AlCalzone) support github branch names with slashes on adapter install
        • (foxriber76) Add notification system (see DOCS LINK TODO)
        • (foxriver76) enhance setup (and setup first) with redis to all port configuration
        • (foxriver76) set connectionName for redis connections and simulator support
        • (bluefox) Added "http" and "stream" options for logs
        • (Apollon77) add seq logging support to js-controller
        • (foxriver76) Fix wrong logger pattern that caused issues on windows
        • (Apollon77) fix potential crash when restoring backup
        • (Apollon77) restore old logfile deletion logic because rotator library do not work as expected
        • (Apollon77) Optimize File DBs to lower write i/o by 50% (backup file is now renamed instead of rewritten)
        • (AlCalzone/Apollon77) Restructure DB code to allow easier new DB types
        • (Apollon77) enhance letsencrypt to also allow to specify alternative names for certs

        Optimizations and Fixes

        • (foxriver76) Detect adapter restart loops and stop restarting after 3 crashes (an adapter is considered "working" when no crash by an exception happens within 10 minutes)
        • (foxriver76) Fix failed logins if username is uppercase, be reworking user logic and caching
        • (bluefox) Set for def states the quality: QUALITY_SUBS_INITIAL
        • (AlCalzone) fix npm uninstall loglevel argument
        • (foxriver76) delete pids.txt when iobroker was stopped
        • (bluefox) Add missing attributes by multihost if Redis is used for objects/states, Remove unused settings from iobroker-dist.json, Remove pass and user from connection settings. Use options.auth_pass
        • (AlCalzone) Package-Manager: log which packages were (already) installed
        • (foxriver76) replace redis "KEYS" command by "SCAN" to optimize redis access performance
        • (foxriver76) optimize redis library usage to prevent errors on redis outages
        • (bluefox) Catch errors when plugins initialize. At least log will work and could be checked for errors.
        • (foxriver76) allow migration of instances to already existing host
        • (foxriver76) also allow <adapter>.<instance-nr> for install/add cli command
        • (AlCalzone) buffer streams that are piped to stdout to fix weird Windows logging cases
        • (foxriver76/AlCalzone) Optimize upgrade/downgrade logic for adapters, ask for a downgrade only if lower version is to be installed
        • (foxriver76) allow redis redis migration when changing host of redis - fix bug where process crashes when controller is running when migrating
        • (bluefox) Catch errors for subscribe on alias without target
        • (foxriver76) only perform auto scaling on alias if not null
        • (foxriver76) if repository request fails also use cached sources on updating repository
        • (foxriver76) prevent host deletion from same host - otherwise it will remove the system.host states but instances will still be on the removed host, because transfer happens to itself
        • (foxriver76) use instanceObjects from system.adapter.* object instead from io-package.json
        • (foxriver76) notify of errors on readFileCertificates to show permission problems etc.
        • (foxriver76) multihost discovery now logs ignored messages on debug and also logs the senders address
        • (foxriver76) sync up created objects on instance start and instance creation by using helper function in tools.js, e.g. .loglevel was missing on instance creation
        • (bluefox) Package-Manager: Filter empty packets out to suppress error message
        • (foxriver76) rename repository names for new installations and on updates to beta/stable
        • (foxriver76) rewrite collectDiagInfo to Promises and fix minor issue with it
        • (foxriver76) only scale aliases if target or source is represented by unit %
        • (foxriver76) create meta.user on file sync cli, if not existing
        • (Apollon77) also create meta.user on setup first if not existing
        • (foxriver76) fix enumInstances used by CLI commands
        • (foxriver76) when missing rights to access log dir do not crash hard anymore, instead fallback to default directory
        • (bluefox) Fix error if type of native data changed in the new version from basic type e.g. 'string' to 'object'.
        • (AlCalzone) Remove hardcoded references to GitHub master branch because newer repositories use "main"
        • (Apollon77) update _design objects also on js-controller upgrade/setup first
        • (Apollon77) optimize deletion of files in ioBroker file storage
        • (foxriver76) do not return an error if object does not exist on del*Object
        • (Apollon77) optimize logs when instance is restarted
        • (foxriver76) Preserve name field on instance object creation/update
        • (foxriver76) optimize parameters and flags on CLI
        • (foxriver76) Use yargs helper instead of building our own string output to allow showing --help for a specific command instead of the whole output and allow support for auto completion (iobroker _createCompletion >> ~/.bashrc)
        • (foxriver76, Apollon77) also accept pre-release version in some semver checks for dependencies
        • (foxriver76) replace outdated encryption mechanism of multihost
        • (Apollon77) prevent an endless loop when lua script initialization was not possible
        • (Apollon77) catch semver errors in upgrade commands
        • (foxriver76) ensure setAdapterInstanceEnabled can not hang
        • (Apollon77, foxriver, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources

        Developer relevant DEPRECATIONS/WARNINGS

        • (foxriver76) we warn if object not exists when setting a state via adapter.setState. Adjust your code that a state value is NOT set before the object is successfully created. If this deep check is NOT wanted for performance reasons the adapter needs to be initialized with strictObjectChecks = false!! (see DOCS LINK TODO)
        • (foxriver76) readFile should not validate meta object, we now throw on writeFile if id is no valid meta object
        • (AlCalzone) update Forbidden ID Characters: use Unicode properties to define which characters are allowed instead of blacklisting. For ASCII the allowed characters are the same as before - for other languages mainly character class of Unicode are allowed! (see DOCS LINK TODO)
        • (foxriver76) Throw on invalid setState objects; was logged as deprecated before
        • (foxriver76) remove getMessage shim, no adapter uses it anymore; was logged as deprecated before

        Developer relevant new Features

        • (foxriver76) use aes-192-cbc as encryption - backward compatible with current encryption, nothing to do for adapter-developers (see DOCS LINK TODO)
        • (bluefox) Add system view to filter for "folder" objects
        • (bluefox) add set/clearTimeout and set/clearInterval to adapter methods and check on unload that they were all cleared and clear if needed with logging, so developers are reminded to clean up!
        • (AlCalzone) Add ...Async version for getChannels - make sure to check before using or use correct js-controller version dependency!
        • (Apollon77) modularize databases into own npm packages and basically support adding new types of databases; add deprecation infos and logging to "old legacy" files in lib/states and lib/objects to not be used anymore; requires mostly updates in testing (see DOCS LINK TODO)
        • (foxriver76) allow to specify the instance for debug starts (iobroker debug adaptername.1)
        • (foxriver76) Enhance extendObject to allow to preserve specified fields (e.g. common.name)
        • (foxriver76) add adapter method getUserId

        Developer relevant Optimizations and Fixes

        • (foxriver76) implement maybeCallback and maybeCallbackWithError and use it in adapter.js
        • (AlCalzone) use fs-extra instead of mkdirp
        • (AlCalzone) read JSON files using fs-extra's readJSONSync
        • (AlCalzone) fix callback definitions in adapter.js, We have signatures for (almost) everything in @types/iobroker and we should use them
        • (AlCalzone) move from Promises to async/await in some places, use a single readyPromise instead of an array
        • (foxriver76) migrated ci tests to github actions
        • (foxriver76) resolve adapter main file as tools.js method
        • (foxriver76) optimize extendObject with def value
        • (AlCalzone) Handle existing, but undefined properties in validateSetStateObjectArgument
        • (foxriver76) also escape + char on regex, it's not forbidden
        • (bluefox) Set default state only for objects of type "state"
        • (AlCalzone) include folders in the result of getAdapterObjects
        • (Apollon77) Make sure to not trigger subscribes or messages when unload is called
        • (Apollon77) deleting a not existing object is handled as success instead of Not-Exists error
        • general dependency updates
        • code style optimizations

        Generell ist zu prüfen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!


        Wie Fehler melden?


        Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.

        Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.

        Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

        Ingo

        S Offline
        S Offline
        sandro_gera
        schrieb am zuletzt editiert von sandro_gera
        #20

        @apollon77

        Sorry wenn ich mal so dumm frage, aber ich will nichts falsch machen. Ich habe nach dem Stoppen das ioBrokers und der Überprüfung mit den Befehlen ps auxww|grep io , ps auxww|grep backup folgende Ausgabe erhalten.

        pi@RaspBerry4BioBroker:~ $ ps auxww|grep io
        root        13  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/0]
        root        16  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/1]
        root        21  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/2]
        root        26  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/3]
        root        58  0.0  0.0      0     0 ?        I<   14:40   0:00 [blkcg_punt_bio]
        root        62  0.0  0.0      0     0 ?        I<   14:40   0:00 [rpciod]
        root        64  0.0  0.0      0     0 ?        I<   14:40   0:00 [xprtiod]
        root        66  0.0  0.0      0     0 ?        I<   14:40   0:00 [nfsiod]
        root        72  0.0  0.0      0     0 ?        I<   14:40   0:00 [DWC Notificatio]
        message+   354  0.0  0.0   6548  3000 ?        Ss   14:40   0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
        avahi      372  0.0  0.0   5904  2528 ?        Ss   14:40   0:00 avahi-daemon: running [RaspBerry4BioBroker.local]
        root       724  0.0  0.0      0     0 ?        I<   14:40   0:00 [cifsiod]
        pi        1825  0.0  0.0   7360   492 pts/0    S+   14:51   0:00 grep --color=auto io
        pi@RaspBerry4BioBroker:~ $ ps auxww|grep backup
        pi        1827  0.0  0.0   7360   508 pts/0    S+   14:51   0:00 grep --color=auto backup
        
        

        Jetzt bin ich nicht sicher ob wirklich alles gestoppt ist.

        Wenn nicht was muß ich noch machen damit alle Prozesse gestopt werden?

        Master RPI4 8GB, Slave RPI3 1GB
        Node.js v18.17.1, npm: 9.6.7,
        JS-Controller: 5.0.16

        apollon77A 1 Antwort Letzte Antwort
        0
        • S sandro_gera

          @apollon77

          Sorry wenn ich mal so dumm frage, aber ich will nichts falsch machen. Ich habe nach dem Stoppen das ioBrokers und der Überprüfung mit den Befehlen ps auxww|grep io , ps auxww|grep backup folgende Ausgabe erhalten.

          pi@RaspBerry4BioBroker:~ $ ps auxww|grep io
          root        13  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/0]
          root        16  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/1]
          root        21  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/2]
          root        26  0.0  0.0      0     0 ?        S    14:40   0:00 [migration/3]
          root        58  0.0  0.0      0     0 ?        I<   14:40   0:00 [blkcg_punt_bio]
          root        62  0.0  0.0      0     0 ?        I<   14:40   0:00 [rpciod]
          root        64  0.0  0.0      0     0 ?        I<   14:40   0:00 [xprtiod]
          root        66  0.0  0.0      0     0 ?        I<   14:40   0:00 [nfsiod]
          root        72  0.0  0.0      0     0 ?        I<   14:40   0:00 [DWC Notificatio]
          message+   354  0.0  0.0   6548  3000 ?        Ss   14:40   0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
          avahi      372  0.0  0.0   5904  2528 ?        Ss   14:40   0:00 avahi-daemon: running [RaspBerry4BioBroker.local]
          root       724  0.0  0.0      0     0 ?        I<   14:40   0:00 [cifsiod]
          pi        1825  0.0  0.0   7360   492 pts/0    S+   14:51   0:00 grep --color=auto io
          pi@RaspBerry4BioBroker:~ $ ps auxww|grep backup
          pi        1827  0.0  0.0   7360   508 pts/0    S+   14:51   0:00 grep --color=auto backup
          
          

          Jetzt bin ich nicht sicher ob wirklich alles gestoppt ist.

          Wenn nicht was muß ich noch machen damit alle Prozesse gestopt werden?

          apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #21

          @sandro_gera ist alles gestoppt

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          S 2 Antworten Letzte Antwort
          1
          • apollon77A apollon77

            @sandro_gera ist alles gestoppt

            S Offline
            S Offline
            sandro_gera
            schrieb am zuletzt editiert von
            #22

            @apollon77

            vielen dank

            Master RPI4 8GB, Slave RPI3 1GB
            Node.js v18.17.1, npm: 9.6.7,
            JS-Controller: 5.0.16

            1 Antwort Letzte Antwort
            0
            • apollon77A apollon77

              @sandro_gera ist alles gestoppt

              S Offline
              S Offline
              sandro_gera
              schrieb am zuletzt editiert von
              #23

              @apollon77

              ich habe folgende Fehlermeldung bekommen nachdem ich das update angestoßen habe

              pi@RaspBerry4BioBroker:~ $ iobroker upgrade self
              Update js-controller from @3.1.6 to @3.2.16
              NPM version: 6.14.11
              npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System c                           all)
              npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System c                           all)
              Starting node restart.js
              pi@RaspBerry4BioBroker:~ $ npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
              
              

              Was kann ich machen?

              Master RPI4 8GB, Slave RPI3 1GB
              Node.js v18.17.1, npm: 9.6.7,
              JS-Controller: 5.0.16

              apollon77A 1 Antwort Letzte Antwort
              0
              • S sandro_gera

                @apollon77

                ich habe folgende Fehlermeldung bekommen nachdem ich das update angestoßen habe

                pi@RaspBerry4BioBroker:~ $ iobroker upgrade self
                Update js-controller from @3.1.6 to @3.2.16
                NPM version: 6.14.11
                npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System c                           all)
                npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System c                           all)
                Starting node restart.js
                pi@RaspBerry4BioBroker:~ $ npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
                
                

                Was kann ich machen?

                apollon77A Offline
                apollon77A Offline
                apollon77
                schrieb am zuletzt editiert von
                #24

                @sandro_gera Wo siehst du da eine fehlermeldung? Das sind alles die normalen ausgaben. alles gut durchgelaufen

                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                S 1 Antwort Letzte Antwort
                0
                • apollon77A apollon77

                  @sandro_gera Wo siehst du da eine fehlermeldung? Das sind alles die normalen ausgaben. alles gut durchgelaufen

                  S Offline
                  S Offline
                  sandro_gera
                  schrieb am zuletzt editiert von
                  #25

                  @apollon77

                  sorry das ich mich so dumm anstellen ich dachte nur "loglevel error" bedeutet das es irgendwo ein Problem gab.

                  Master RPI4 8GB, Slave RPI3 1GB
                  Node.js v18.17.1, npm: 9.6.7,
                  JS-Controller: 5.0.16

                  apollon77A 1 Antwort Letzte Antwort
                  0
                  • S sandro_gera

                    @apollon77

                    sorry das ich mich so dumm anstellen ich dachte nur "loglevel error" bedeutet das es irgendwo ein Problem gab.

                    apollon77A Offline
                    apollon77A Offline
                    apollon77
                    schrieb am zuletzt editiert von
                    #26

                    @sandro_gera ne das heisst "gib nur fehler aus". Und da nix ausgegeben wurde ist alles ok

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    1 Antwort Letzte Antwort
                    0
                    • apollon77A apollon77

                      Hallo ioBroker-Community,

                      mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die in der letzten Zeit diese Version bereits im Beta- und Latest-Test getestet und Probleme und Fehler zur Behebung gemeldet haben!

                      Node.js Versions-Anforderungen
                      Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
                      Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625

                      Informationen zur Version
                      Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
                      Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.

                      Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
                      Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.

                      In Summe sind in diese Version über 750 commits eingeflossen. Dafür bedanke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!

                      Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Was es bei Multihost Systemen zu beachten gibt findet Ihr etwas weiter unten! Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂

                      Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.


                      Installation


                      VOR der Installation

                      Wie bei jedem Test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder per npm install iobroker.js-controller@version installiert werden und sollte alles wieder herstellen.

                      Nötige Adapter-Aktualisierungen

                      Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:

                      • ioBroker.lovelace 1.4.1 oder höher
                      • ioBroker.simple-api 2.5.2 oder höher
                      • ioBroker.socketio 3.1.3 oder höher
                      • ioBroker.telegram 1.7.0 oder höher
                      • ioBroker.web 3.2.2 oder höher
                      • ioBroker.admin 4.2.1 oder höher

                      Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.

                      Achtung: Multihost-Systeme Reihenfolgen beachten!

                      Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 nötig, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!

                      Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!

                      Windows

                      Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.

                      Für alle "alten manuellen" Installationen gilt

                      • ioBroker muss gestoppt sein.
                      • Vor dem Update bitte prüfen das keine Prozesse mehr laufen
                      • iobroker update
                      • iobroker upgrade self
                      • ioBroker starten

                      Linux

                      • ioBroker stoppen (iobroker stop)
                      • prüfen das keine Prozesse (Adapter, Backups) mehr laufen (ps auxww|grep io und auch ps auxww|grep backup ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben
                      • iobroker update
                      • Wie üblich wird das Update dann per iobroker upgrade self ausgeführt.
                      • ioBroker starten (iobroker start)

                      Bei Fehlern:
                      Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fix wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
                      Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install iobroker.js-controller versuchen. Bitte berichtet solche Fälle hier im Thread.

                      NACH der Installation

                      Nach der Installation den ioBroker wieder starten (z.B. mittels iobroker start).

                      Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.

                      Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!

                      Mit iobroker help wird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)


                      Was hat sich geändert, was besonders ansehen/beachten?


                      Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:

                      • generell siehe Changelog, speziell auch für Features
                      • Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
                      • Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden

                      Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten

                      Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


                      BREAKING CHANGES

                      • None, Supported are nodejs 10.x, 12.x and 14.x (Node.js 15.x is also working WHEN USED WITH npm 6!! in the automated tests, but formally not supported)
                      • If you have enabled Multihost Discovery please disable and enable it again if you really need it persistent running. By re-enabling it you update the used passphrase with a better encryption mechanism.
                      • (Foxriver76) Harmonize username handling between admin and js-controller by transforming the object id to lowercase. With this user names will be treated case insensitive from now on!

                      Features

                      • (raintonr) Update Let's encrypt implementation; all relevent adapters (web and such) need updates to use it! NEEDS NODE.JS 12.x+! (see DOCS LINK TODO)
                      • (bluefox) Restart adapters that use Let's encrypt after certificates were updated
                      • (bluefox) Provide min/max for convert alias functions
                      • (foxriver76) handling major adapter upgrades more carefully (CLI on upgrade will show if it's a major upgrade and major upgrades will be skipped on upgrade all when executed by admin
                      • (AlCalzone) detect and allow short github URL format when (auto-)installing adapters (iobroker url User/repo#branchorcommit)
                      • (AlCalzone) Support more Github URL formats for iobroker url command
                      • (AlCalzone) support github branch names with slashes on adapter install
                      • (foxriber76) Add notification system (see DOCS LINK TODO)
                      • (foxriver76) enhance setup (and setup first) with redis to all port configuration
                      • (foxriver76) set connectionName for redis connections and simulator support
                      • (bluefox) Added "http" and "stream" options for logs
                      • (Apollon77) add seq logging support to js-controller
                      • (foxriver76) Fix wrong logger pattern that caused issues on windows
                      • (Apollon77) fix potential crash when restoring backup
                      • (Apollon77) restore old logfile deletion logic because rotator library do not work as expected
                      • (Apollon77) Optimize File DBs to lower write i/o by 50% (backup file is now renamed instead of rewritten)
                      • (AlCalzone/Apollon77) Restructure DB code to allow easier new DB types
                      • (Apollon77) enhance letsencrypt to also allow to specify alternative names for certs

                      Optimizations and Fixes

                      • (foxriver76) Detect adapter restart loops and stop restarting after 3 crashes (an adapter is considered "working" when no crash by an exception happens within 10 minutes)
                      • (foxriver76) Fix failed logins if username is uppercase, be reworking user logic and caching
                      • (bluefox) Set for def states the quality: QUALITY_SUBS_INITIAL
                      • (AlCalzone) fix npm uninstall loglevel argument
                      • (foxriver76) delete pids.txt when iobroker was stopped
                      • (bluefox) Add missing attributes by multihost if Redis is used for objects/states, Remove unused settings from iobroker-dist.json, Remove pass and user from connection settings. Use options.auth_pass
                      • (AlCalzone) Package-Manager: log which packages were (already) installed
                      • (foxriver76) replace redis "KEYS" command by "SCAN" to optimize redis access performance
                      • (foxriver76) optimize redis library usage to prevent errors on redis outages
                      • (bluefox) Catch errors when plugins initialize. At least log will work and could be checked for errors.
                      • (foxriver76) allow migration of instances to already existing host
                      • (foxriver76) also allow <adapter>.<instance-nr> for install/add cli command
                      • (AlCalzone) buffer streams that are piped to stdout to fix weird Windows logging cases
                      • (foxriver76/AlCalzone) Optimize upgrade/downgrade logic for adapters, ask for a downgrade only if lower version is to be installed
                      • (foxriver76) allow redis redis migration when changing host of redis - fix bug where process crashes when controller is running when migrating
                      • (bluefox) Catch errors for subscribe on alias without target
                      • (foxriver76) only perform auto scaling on alias if not null
                      • (foxriver76) if repository request fails also use cached sources on updating repository
                      • (foxriver76) prevent host deletion from same host - otherwise it will remove the system.host states but instances will still be on the removed host, because transfer happens to itself
                      • (foxriver76) use instanceObjects from system.adapter.* object instead from io-package.json
                      • (foxriver76) notify of errors on readFileCertificates to show permission problems etc.
                      • (foxriver76) multihost discovery now logs ignored messages on debug and also logs the senders address
                      • (foxriver76) sync up created objects on instance start and instance creation by using helper function in tools.js, e.g. .loglevel was missing on instance creation
                      • (bluefox) Package-Manager: Filter empty packets out to suppress error message
                      • (foxriver76) rename repository names for new installations and on updates to beta/stable
                      • (foxriver76) rewrite collectDiagInfo to Promises and fix minor issue with it
                      • (foxriver76) only scale aliases if target or source is represented by unit %
                      • (foxriver76) create meta.user on file sync cli, if not existing
                      • (Apollon77) also create meta.user on setup first if not existing
                      • (foxriver76) fix enumInstances used by CLI commands
                      • (foxriver76) when missing rights to access log dir do not crash hard anymore, instead fallback to default directory
                      • (bluefox) Fix error if type of native data changed in the new version from basic type e.g. 'string' to 'object'.
                      • (AlCalzone) Remove hardcoded references to GitHub master branch because newer repositories use "main"
                      • (Apollon77) update _design objects also on js-controller upgrade/setup first
                      • (Apollon77) optimize deletion of files in ioBroker file storage
                      • (foxriver76) do not return an error if object does not exist on del*Object
                      • (Apollon77) optimize logs when instance is restarted
                      • (foxriver76) Preserve name field on instance object creation/update
                      • (foxriver76) optimize parameters and flags on CLI
                      • (foxriver76) Use yargs helper instead of building our own string output to allow showing --help for a specific command instead of the whole output and allow support for auto completion (iobroker _createCompletion >> ~/.bashrc)
                      • (foxriver76, Apollon77) also accept pre-release version in some semver checks for dependencies
                      • (foxriver76) replace outdated encryption mechanism of multihost
                      • (Apollon77) prevent an endless loop when lua script initialization was not possible
                      • (Apollon77) catch semver errors in upgrade commands
                      • (foxriver76) ensure setAdapterInstanceEnabled can not hang
                      • (Apollon77, foxriver, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources

                      Developer relevant DEPRECATIONS/WARNINGS

                      • (foxriver76) we warn if object not exists when setting a state via adapter.setState. Adjust your code that a state value is NOT set before the object is successfully created. If this deep check is NOT wanted for performance reasons the adapter needs to be initialized with strictObjectChecks = false!! (see DOCS LINK TODO)
                      • (foxriver76) readFile should not validate meta object, we now throw on writeFile if id is no valid meta object
                      • (AlCalzone) update Forbidden ID Characters: use Unicode properties to define which characters are allowed instead of blacklisting. For ASCII the allowed characters are the same as before - for other languages mainly character class of Unicode are allowed! (see DOCS LINK TODO)
                      • (foxriver76) Throw on invalid setState objects; was logged as deprecated before
                      • (foxriver76) remove getMessage shim, no adapter uses it anymore; was logged as deprecated before

                      Developer relevant new Features

                      • (foxriver76) use aes-192-cbc as encryption - backward compatible with current encryption, nothing to do for adapter-developers (see DOCS LINK TODO)
                      • (bluefox) Add system view to filter for "folder" objects
                      • (bluefox) add set/clearTimeout and set/clearInterval to adapter methods and check on unload that they were all cleared and clear if needed with logging, so developers are reminded to clean up!
                      • (AlCalzone) Add ...Async version for getChannels - make sure to check before using or use correct js-controller version dependency!
                      • (Apollon77) modularize databases into own npm packages and basically support adding new types of databases; add deprecation infos and logging to "old legacy" files in lib/states and lib/objects to not be used anymore; requires mostly updates in testing (see DOCS LINK TODO)
                      • (foxriver76) allow to specify the instance for debug starts (iobroker debug adaptername.1)
                      • (foxriver76) Enhance extendObject to allow to preserve specified fields (e.g. common.name)
                      • (foxriver76) add adapter method getUserId

                      Developer relevant Optimizations and Fixes

                      • (foxriver76) implement maybeCallback and maybeCallbackWithError and use it in adapter.js
                      • (AlCalzone) use fs-extra instead of mkdirp
                      • (AlCalzone) read JSON files using fs-extra's readJSONSync
                      • (AlCalzone) fix callback definitions in adapter.js, We have signatures for (almost) everything in @types/iobroker and we should use them
                      • (AlCalzone) move from Promises to async/await in some places, use a single readyPromise instead of an array
                      • (foxriver76) migrated ci tests to github actions
                      • (foxriver76) resolve adapter main file as tools.js method
                      • (foxriver76) optimize extendObject with def value
                      • (AlCalzone) Handle existing, but undefined properties in validateSetStateObjectArgument
                      • (foxriver76) also escape + char on regex, it's not forbidden
                      • (bluefox) Set default state only for objects of type "state"
                      • (AlCalzone) include folders in the result of getAdapterObjects
                      • (Apollon77) Make sure to not trigger subscribes or messages when unload is called
                      • (Apollon77) deleting a not existing object is handled as success instead of Not-Exists error
                      • general dependency updates
                      • code style optimizations

                      Generell ist zu prüfen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!


                      Wie Fehler melden?


                      Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.

                      Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.

                      Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

                      Ingo

                      E Offline
                      E Offline
                      eb0klud
                      schrieb am zuletzt editiert von
                      #27

                      @apollon77 Danke für Deine Arbeit!

                      Ich habe auf 3.2.16 geupdatet und nun bringt der fritzdect.0 error:
                      (773) no response part in returned message und
                      (773) fritzbox returned this {"error":{},"options":{"url":"192.168.178.1/login_sid.lua"}}

                      Leider kann ich mit der Fehlermeldung nichts anfangen und finde auch leider keinen Hinweis. Kannst Du weiterhelfen?

                      Gruß Gerhard

                      apollon77A 1 Antwort Letzte Antwort
                      0
                      • E eb0klud

                        @apollon77 Danke für Deine Arbeit!

                        Ich habe auf 3.2.16 geupdatet und nun bringt der fritzdect.0 error:
                        (773) no response part in returned message und
                        (773) fritzbox returned this {"error":{},"options":{"url":"192.168.178.1/login_sid.lua"}}

                        Leider kann ich mit der Fehlermeldung nichts anfangen und finde auch leider keinen Hinweis. Kannst Du weiterhelfen?

                        Gruß Gerhard

                        apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #28

                        @eb0kludHm. ich kann auch nur mit der Meldung des Adapters raten: Deine Fritzbox hat nicht geantwortet. stoppe mal Adapter, warte kurz und starte neu. Sonst -> Adapter! Hat nichts mit dem Controller zu tun

                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                        E 1 Antwort Letzte Antwort
                        0
                        • apollon77A apollon77

                          @eb0kludHm. ich kann auch nur mit der Meldung des Adapters raten: Deine Fritzbox hat nicht geantwortet. stoppe mal Adapter, warte kurz und starte neu. Sonst -> Adapter! Hat nichts mit dem Controller zu tun

                          E Offline
                          E Offline
                          eb0klud
                          schrieb am zuletzt editiert von
                          #29

                          @apollon77 alles klar, danke.....den Adapter hatte ich schon neu gestartet. Ich werde die Fritzbox nochmal starten

                          1 Antwort Letzte Antwort
                          0
                          • FredFF Online
                            FredFF Online
                            FredF
                            Most Active Forum Testing
                            schrieb am zuletzt editiert von
                            #30

                            Auch bei meinem Master mit einem Slave hat alles geklappt.
                            Super Job, @apollon77 und alle Beteiligten

                            1 Antwort Letzte Antwort
                            1
                            • A Offline
                              A Offline
                              AliBabaBinLaden
                              schrieb am zuletzt editiert von
                              #31

                              @apollon77 said in js-controller 3.2 jetzt im STABLE!:

                              iobroker start

                              Hallo
                              seit dem Update habe ich im LOG Warnmeldungen vom smartmeter Adapter.
                              Was bedeuten denn diese Meldungen und wie kann ich sie beheben?

                              1.PNG

                              Thomas BraunT apollon77A 2 Antworten Letzte Antwort
                              0
                              • A AliBabaBinLaden

                                @apollon77 said in js-controller 3.2 jetzt im STABLE!:

                                iobroker start

                                Hallo
                                seit dem Update habe ich im LOG Warnmeldungen vom smartmeter Adapter.
                                Was bedeuten denn diese Meldungen und wie kann ich sie beheben?

                                1.PNG

                                Thomas BraunT Online
                                Thomas BraunT Online
                                Thomas Braun
                                Most Active
                                schrieb am zuletzt editiert von
                                #32

                                @alibababinladen
                                Wie alle diese Meldungen. Mach ein Issue beim entsprechenden Adapter auf.

                                Linux-Werkzeugkasten:
                                https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                NodeJS Fixer Skript:
                                https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                1 Antwort Letzte Antwort
                                0
                                • A AliBabaBinLaden

                                  @apollon77 said in js-controller 3.2 jetzt im STABLE!:

                                  iobroker start

                                  Hallo
                                  seit dem Update habe ich im LOG Warnmeldungen vom smartmeter Adapter.
                                  Was bedeuten denn diese Meldungen und wie kann ich sie beheben?

                                  1.PNG

                                  apollon77A Offline
                                  apollon77A Offline
                                  apollon77
                                  schrieb am zuletzt editiert von
                                  #33

                                  @alibababinladen Naja, hast Du Smartmeter auf die letzte Version im Stable aktualisiert?

                                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                  M 1 Antwort Letzte Antwort
                                  0
                                  • apollon77A apollon77

                                    @alibababinladen Naja, hast Du Smartmeter auf die letzte Version im Stable aktualisiert?

                                    M Offline
                                    M Offline
                                    Marty56
                                    schrieb am zuletzt editiert von
                                    #34

                                    @apollon77

                                    Ich hatte folgendes Fehlerbild schon mit dem Homematic Adapter gemeldet.
                                    Jetzt taucht es im Zusammenhang mit dem Alexa Adapter auf.
                                    Ich bekomme in Abstand von wenigen Millisekunden die Meldung, dass States database not connected ist.

                                    Wenn ich dann den Alexa Adapter stoppe und wieder starte, ist eine Weile (einige Minuten bis Stunden) Ruhe, um dann wieder anzufangen.

                                    Ich glaube nicht, dass das an dem Alexa Adapter liegt.

                                    Ich habe
                                    Objects type: file
                                    States type: redis

                                    Ansonsten Node 12, js-controller 3.2.16 und Alexa 3.8.0 installiert. Alexa 3.8.1 erzeugte denselben Fehler.

                                    alexa2.0	2021-02-20 11:21:43.008	info	(COMPACT) setState not processed because States database not connected
                                    alexa2.0	2021-02-20 11:21:43.007	info	(COMPACT) setState not processed because States database not connected
                                    

                                    HW:NUC (16 GB Ram)
                                    OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                                    apollon77A 1 Antwort Letzte Antwort
                                    0
                                    • apollon77A apollon77

                                      Hallo ioBroker-Community,

                                      mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die in der letzten Zeit diese Version bereits im Beta- und Latest-Test getestet und Probleme und Fehler zur Behebung gemeldet haben!

                                      Node.js Versions-Anforderungen
                                      Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
                                      Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625

                                      Informationen zur Version
                                      Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
                                      Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.

                                      Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
                                      Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.

                                      In Summe sind in diese Version über 750 commits eingeflossen. Dafür bedanke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!

                                      Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Was es bei Multihost Systemen zu beachten gibt findet Ihr etwas weiter unten! Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂

                                      Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.


                                      Installation


                                      VOR der Installation

                                      Wie bei jedem Test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder per npm install iobroker.js-controller@version installiert werden und sollte alles wieder herstellen.

                                      Nötige Adapter-Aktualisierungen

                                      Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:

                                      • ioBroker.lovelace 1.4.1 oder höher
                                      • ioBroker.simple-api 2.5.2 oder höher
                                      • ioBroker.socketio 3.1.3 oder höher
                                      • ioBroker.telegram 1.7.0 oder höher
                                      • ioBroker.web 3.2.2 oder höher
                                      • ioBroker.admin 4.2.1 oder höher

                                      Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.

                                      Achtung: Multihost-Systeme Reihenfolgen beachten!

                                      Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 nötig, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!

                                      Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!

                                      Windows

                                      Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.

                                      Für alle "alten manuellen" Installationen gilt

                                      • ioBroker muss gestoppt sein.
                                      • Vor dem Update bitte prüfen das keine Prozesse mehr laufen
                                      • iobroker update
                                      • iobroker upgrade self
                                      • ioBroker starten

                                      Linux

                                      • ioBroker stoppen (iobroker stop)
                                      • prüfen das keine Prozesse (Adapter, Backups) mehr laufen (ps auxww|grep io und auch ps auxww|grep backup ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben
                                      • iobroker update
                                      • Wie üblich wird das Update dann per iobroker upgrade self ausgeführt.
                                      • ioBroker starten (iobroker start)

                                      Bei Fehlern:
                                      Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fix wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
                                      Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install iobroker.js-controller versuchen. Bitte berichtet solche Fälle hier im Thread.

                                      NACH der Installation

                                      Nach der Installation den ioBroker wieder starten (z.B. mittels iobroker start).

                                      Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.

                                      Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!

                                      Mit iobroker help wird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)


                                      Was hat sich geändert, was besonders ansehen/beachten?


                                      Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:

                                      • generell siehe Changelog, speziell auch für Features
                                      • Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
                                      • Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden

                                      Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten

                                      Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


                                      BREAKING CHANGES

                                      • None, Supported are nodejs 10.x, 12.x and 14.x (Node.js 15.x is also working WHEN USED WITH npm 6!! in the automated tests, but formally not supported)
                                      • If you have enabled Multihost Discovery please disable and enable it again if you really need it persistent running. By re-enabling it you update the used passphrase with a better encryption mechanism.
                                      • (Foxriver76) Harmonize username handling between admin and js-controller by transforming the object id to lowercase. With this user names will be treated case insensitive from now on!

                                      Features

                                      • (raintonr) Update Let's encrypt implementation; all relevent adapters (web and such) need updates to use it! NEEDS NODE.JS 12.x+! (see DOCS LINK TODO)
                                      • (bluefox) Restart adapters that use Let's encrypt after certificates were updated
                                      • (bluefox) Provide min/max for convert alias functions
                                      • (foxriver76) handling major adapter upgrades more carefully (CLI on upgrade will show if it's a major upgrade and major upgrades will be skipped on upgrade all when executed by admin
                                      • (AlCalzone) detect and allow short github URL format when (auto-)installing adapters (iobroker url User/repo#branchorcommit)
                                      • (AlCalzone) Support more Github URL formats for iobroker url command
                                      • (AlCalzone) support github branch names with slashes on adapter install
                                      • (foxriber76) Add notification system (see DOCS LINK TODO)
                                      • (foxriver76) enhance setup (and setup first) with redis to all port configuration
                                      • (foxriver76) set connectionName for redis connections and simulator support
                                      • (bluefox) Added "http" and "stream" options for logs
                                      • (Apollon77) add seq logging support to js-controller
                                      • (foxriver76) Fix wrong logger pattern that caused issues on windows
                                      • (Apollon77) fix potential crash when restoring backup
                                      • (Apollon77) restore old logfile deletion logic because rotator library do not work as expected
                                      • (Apollon77) Optimize File DBs to lower write i/o by 50% (backup file is now renamed instead of rewritten)
                                      • (AlCalzone/Apollon77) Restructure DB code to allow easier new DB types
                                      • (Apollon77) enhance letsencrypt to also allow to specify alternative names for certs

                                      Optimizations and Fixes

                                      • (foxriver76) Detect adapter restart loops and stop restarting after 3 crashes (an adapter is considered "working" when no crash by an exception happens within 10 minutes)
                                      • (foxriver76) Fix failed logins if username is uppercase, be reworking user logic and caching
                                      • (bluefox) Set for def states the quality: QUALITY_SUBS_INITIAL
                                      • (AlCalzone) fix npm uninstall loglevel argument
                                      • (foxriver76) delete pids.txt when iobroker was stopped
                                      • (bluefox) Add missing attributes by multihost if Redis is used for objects/states, Remove unused settings from iobroker-dist.json, Remove pass and user from connection settings. Use options.auth_pass
                                      • (AlCalzone) Package-Manager: log which packages were (already) installed
                                      • (foxriver76) replace redis "KEYS" command by "SCAN" to optimize redis access performance
                                      • (foxriver76) optimize redis library usage to prevent errors on redis outages
                                      • (bluefox) Catch errors when plugins initialize. At least log will work and could be checked for errors.
                                      • (foxriver76) allow migration of instances to already existing host
                                      • (foxriver76) also allow <adapter>.<instance-nr> for install/add cli command
                                      • (AlCalzone) buffer streams that are piped to stdout to fix weird Windows logging cases
                                      • (foxriver76/AlCalzone) Optimize upgrade/downgrade logic for adapters, ask for a downgrade only if lower version is to be installed
                                      • (foxriver76) allow redis redis migration when changing host of redis - fix bug where process crashes when controller is running when migrating
                                      • (bluefox) Catch errors for subscribe on alias without target
                                      • (foxriver76) only perform auto scaling on alias if not null
                                      • (foxriver76) if repository request fails also use cached sources on updating repository
                                      • (foxriver76) prevent host deletion from same host - otherwise it will remove the system.host states but instances will still be on the removed host, because transfer happens to itself
                                      • (foxriver76) use instanceObjects from system.adapter.* object instead from io-package.json
                                      • (foxriver76) notify of errors on readFileCertificates to show permission problems etc.
                                      • (foxriver76) multihost discovery now logs ignored messages on debug and also logs the senders address
                                      • (foxriver76) sync up created objects on instance start and instance creation by using helper function in tools.js, e.g. .loglevel was missing on instance creation
                                      • (bluefox) Package-Manager: Filter empty packets out to suppress error message
                                      • (foxriver76) rename repository names for new installations and on updates to beta/stable
                                      • (foxriver76) rewrite collectDiagInfo to Promises and fix minor issue with it
                                      • (foxriver76) only scale aliases if target or source is represented by unit %
                                      • (foxriver76) create meta.user on file sync cli, if not existing
                                      • (Apollon77) also create meta.user on setup first if not existing
                                      • (foxriver76) fix enumInstances used by CLI commands
                                      • (foxriver76) when missing rights to access log dir do not crash hard anymore, instead fallback to default directory
                                      • (bluefox) Fix error if type of native data changed in the new version from basic type e.g. 'string' to 'object'.
                                      • (AlCalzone) Remove hardcoded references to GitHub master branch because newer repositories use "main"
                                      • (Apollon77) update _design objects also on js-controller upgrade/setup first
                                      • (Apollon77) optimize deletion of files in ioBroker file storage
                                      • (foxriver76) do not return an error if object does not exist on del*Object
                                      • (Apollon77) optimize logs when instance is restarted
                                      • (foxriver76) Preserve name field on instance object creation/update
                                      • (foxriver76) optimize parameters and flags on CLI
                                      • (foxriver76) Use yargs helper instead of building our own string output to allow showing --help for a specific command instead of the whole output and allow support for auto completion (iobroker _createCompletion >> ~/.bashrc)
                                      • (foxriver76, Apollon77) also accept pre-release version in some semver checks for dependencies
                                      • (foxriver76) replace outdated encryption mechanism of multihost
                                      • (Apollon77) prevent an endless loop when lua script initialization was not possible
                                      • (Apollon77) catch semver errors in upgrade commands
                                      • (foxriver76) ensure setAdapterInstanceEnabled can not hang
                                      • (Apollon77, foxriver, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources

                                      Developer relevant DEPRECATIONS/WARNINGS

                                      • (foxriver76) we warn if object not exists when setting a state via adapter.setState. Adjust your code that a state value is NOT set before the object is successfully created. If this deep check is NOT wanted for performance reasons the adapter needs to be initialized with strictObjectChecks = false!! (see DOCS LINK TODO)
                                      • (foxriver76) readFile should not validate meta object, we now throw on writeFile if id is no valid meta object
                                      • (AlCalzone) update Forbidden ID Characters: use Unicode properties to define which characters are allowed instead of blacklisting. For ASCII the allowed characters are the same as before - for other languages mainly character class of Unicode are allowed! (see DOCS LINK TODO)
                                      • (foxriver76) Throw on invalid setState objects; was logged as deprecated before
                                      • (foxriver76) remove getMessage shim, no adapter uses it anymore; was logged as deprecated before

                                      Developer relevant new Features

                                      • (foxriver76) use aes-192-cbc as encryption - backward compatible with current encryption, nothing to do for adapter-developers (see DOCS LINK TODO)
                                      • (bluefox) Add system view to filter for "folder" objects
                                      • (bluefox) add set/clearTimeout and set/clearInterval to adapter methods and check on unload that they were all cleared and clear if needed with logging, so developers are reminded to clean up!
                                      • (AlCalzone) Add ...Async version for getChannels - make sure to check before using or use correct js-controller version dependency!
                                      • (Apollon77) modularize databases into own npm packages and basically support adding new types of databases; add deprecation infos and logging to "old legacy" files in lib/states and lib/objects to not be used anymore; requires mostly updates in testing (see DOCS LINK TODO)
                                      • (foxriver76) allow to specify the instance for debug starts (iobroker debug adaptername.1)
                                      • (foxriver76) Enhance extendObject to allow to preserve specified fields (e.g. common.name)
                                      • (foxriver76) add adapter method getUserId

                                      Developer relevant Optimizations and Fixes

                                      • (foxriver76) implement maybeCallback and maybeCallbackWithError and use it in adapter.js
                                      • (AlCalzone) use fs-extra instead of mkdirp
                                      • (AlCalzone) read JSON files using fs-extra's readJSONSync
                                      • (AlCalzone) fix callback definitions in adapter.js, We have signatures for (almost) everything in @types/iobroker and we should use them
                                      • (AlCalzone) move from Promises to async/await in some places, use a single readyPromise instead of an array
                                      • (foxriver76) migrated ci tests to github actions
                                      • (foxriver76) resolve adapter main file as tools.js method
                                      • (foxriver76) optimize extendObject with def value
                                      • (AlCalzone) Handle existing, but undefined properties in validateSetStateObjectArgument
                                      • (foxriver76) also escape + char on regex, it's not forbidden
                                      • (bluefox) Set default state only for objects of type "state"
                                      • (AlCalzone) include folders in the result of getAdapterObjects
                                      • (Apollon77) Make sure to not trigger subscribes or messages when unload is called
                                      • (Apollon77) deleting a not existing object is handled as success instead of Not-Exists error
                                      • general dependency updates
                                      • code style optimizations

                                      Generell ist zu prüfen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!


                                      Wie Fehler melden?


                                      Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.

                                      Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.

                                      Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

                                      Ingo

                                      D Offline
                                      D Offline
                                      deta
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #35

                                      @apollon77 Ich habe vor ein paar Tagen den Admin mit Passwort besetzt.
                                      Nun Fragt er brav, nach dem Passwort und es geht auch alles.

                                      Nun ist es mir schon ein paar mal aufgefallen, wenn ich in der aktuellen Sitzung bin,
                                      lasse Sie offen sollte diese ja nach einer bestimmten Zeit wieder gesichert zu sein. Leider nicht.
                                      Ich weis nicht wie lange man warten muss, aber ich hatte vor ein paar Stunden in Iobroker was geschaut und muste dringend weg, Hatte den Bildschirm offen gelassen. Bin gerade wieder ran, und siehe da es ist zum Teil geschlossen, aber nicht das er sofort wieder nach dem Password fragt.

                                      Lasse einfach mal den iobroker offen ohne was zu machen eine weile. Dann sollte eigentlich die Info kommen Sitzung abgelaufen.

                                      Ich denke hier hier noch ein Loch...

                                      Ach ja aktuelle JS 3.2.16

                                      cu Detlef

                                      apollon77A 1 Antwort Letzte Antwort
                                      -1
                                      • apollon77A apollon77

                                        Hallo ioBroker-Community,

                                        mit etwas zeitlicher Verspätung, dafür aber um so besser, kommt heute der neue js-controller 3.2 (Releasename "Grace") ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Ein großer Dank geht an alle User die in der letzten Zeit diese Version bereits im Beta- und Latest-Test getestet und Probleme und Fehler zur Behebung gemeldet haben!

                                        Node.js Versions-Anforderungen
                                        Die unterstützten Node.js Versionen bleiben in diesem Update gleich: 10.x, 12.x und auch 14.x werden offiziell unterstützt. Aufgrund der übergreifenden Adapter-Kompatibilität bleibt die empfohlene Node.js Version für ioBroker aktuell weiterhin auf 12.x. Falls jemand wirklich mit Node.js 15.x experimentieren will, dann bitte AUSSCHLIESSLICH mit npm 6 !! (die npm Leute haben in npm 7 wieder Dinge geändert, die wir noch untersuchen)
                                        Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/post/266625

                                        Informationen zur Version
                                        Neben einigen Features haben wir unter der Haube weiter aufgeräumt und sehr viel modernisiert und vereinheitlicht.
                                        Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.

                                        Besonders zu erwähnen ist die Grundlage für das neue Benachrichtigungssystem (kommt dann in einem Admin-Update) und die Reaktivierung von Let's Encrypt zur automatischen Zertifikatsaktualisierung.
                                        Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.

                                        In Summe sind in diese Version über 750 commits eingeflossen. Dafür bedanke mich diesmal besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!

                                        Der js-controller 3.2 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Was es bei Multihost Systemen zu beachten gibt findet Ihr etwas weiter unten! Ein Update von der 2.0/2.1/2.2 ist problemlos möglich. Nur die Node.js Version muss jetzt mindestens 10.x sein, wie oben bereits ausgeführt. Wer überlegt die Node.js Version anzuheben bitte weiter unten im Abschnitt "Was ist zu testen" lesen 🙂

                                        Es gibt aktuell keine inkompatiblem Adapter, aber einige Empfehlungen weiter unten.


                                        Installation


                                        VOR der Installation

                                        Wie bei jedem Test dieser Art: Bitte macht ein Backup! iobroker backup bzw kopieren des iobroker-data Verzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder per npm install iobroker.js-controller@version installiert werden und sollte alles wieder herstellen.

                                        Nötige Adapter-Aktualisierungen

                                        Aktuell sind keine Inkompatibilitäten bekannt, damit allerdings Let's encrypt wieder funktioniert benötigt es einige Adapter in "Latest" Versionen von mindestens:

                                        • ioBroker.lovelace 1.4.1 oder höher
                                        • ioBroker.simple-api 2.5.2 oder höher
                                        • ioBroker.socketio 3.1.3 oder höher
                                        • ioBroker.telegram 1.7.0 oder höher
                                        • ioBroker.web 3.2.2 oder höher
                                        • ioBroker.admin 4.2.1 oder höher

                                        Es werden aber, wie oben ausgeführt, einige Adapter ggf Warnungen ins Log schreiben. Falls das Problematisch ist ist aktuell die einzige Option das Loglevel der Instanz auf "Error" zu setzen.

                                        Achtung: Multihost-Systeme Reihenfolgen beachten!

                                        Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.1 läuft ist es beim Update auf Version 3.2 nötig, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!

                                        Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 3.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 3.2 aktualisiert wurde!

                                        Windows

                                        Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden weiss ich gerade nicht wie der aktuelle Prozess ist, da der Windows Installer nicht ganz aktuell ist. Bitte hier berichten dann kann ich ergänzen.

                                        Für alle "alten manuellen" Installationen gilt

                                        • ioBroker muss gestoppt sein.
                                        • Vor dem Update bitte prüfen das keine Prozesse mehr laufen
                                        • iobroker update
                                        • iobroker upgrade self
                                        • ioBroker starten

                                        Linux

                                        • ioBroker stoppen (iobroker stop)
                                        • prüfen das keine Prozesse (Adapter, Backups) mehr laufen (ps auxww|grep io und auch ps auxww|grep backup ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben
                                        • iobroker update
                                        • Wie üblich wird das Update dann per iobroker upgrade self ausgeführt.
                                        • ioBroker starten (iobroker start)

                                        Bei Fehlern:
                                        Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (iobroker fix wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via curl -sL https://iobroker.net/fix.sh | bash -) nutzen und die Installation wiederholen.
                                        Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels sudo -H -u iobroker npm install iobroker.js-controller versuchen. Bitte berichtet solche Fälle hier im Thread.

                                        NACH der Installation

                                        Nach der Installation den ioBroker wieder starten (z.B. mittels iobroker start).

                                        Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt.

                                        Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!

                                        Mit iobroker help wird eine Liste der möglichen Kommandozeilen-Kommandos angezeigt, die mit Version 2.0 um einige Befehle länger geworden ist. Es geht jetzt auch Kommandospezifisch Hilfe zu erhalten (iobroker upgrade --help)


                                        Was hat sich geändert, was besonders ansehen/beachten?


                                        Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:

                                        • generell siehe Changelog, speziell auch für Features
                                        • Let's Encrypt sollte wieder tun. Minimum Adapterversionen dazu siehe weiter oben!
                                        • Einige Adapter werden Warnungen ausgeben wenn State-Werte gesetzt werden VOR dem Anlegen von Objekten. Bitte bei den Adapter-Repos melden

                                        Speziell die Entwickler sollten bitte die genannten Deprecations anschauen und beachten

                                        Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:


                                        BREAKING CHANGES

                                        • None, Supported are nodejs 10.x, 12.x and 14.x (Node.js 15.x is also working WHEN USED WITH npm 6!! in the automated tests, but formally not supported)
                                        • If you have enabled Multihost Discovery please disable and enable it again if you really need it persistent running. By re-enabling it you update the used passphrase with a better encryption mechanism.
                                        • (Foxriver76) Harmonize username handling between admin and js-controller by transforming the object id to lowercase. With this user names will be treated case insensitive from now on!

                                        Features

                                        • (raintonr) Update Let's encrypt implementation; all relevent adapters (web and such) need updates to use it! NEEDS NODE.JS 12.x+! (see DOCS LINK TODO)
                                        • (bluefox) Restart adapters that use Let's encrypt after certificates were updated
                                        • (bluefox) Provide min/max for convert alias functions
                                        • (foxriver76) handling major adapter upgrades more carefully (CLI on upgrade will show if it's a major upgrade and major upgrades will be skipped on upgrade all when executed by admin
                                        • (AlCalzone) detect and allow short github URL format when (auto-)installing adapters (iobroker url User/repo#branchorcommit)
                                        • (AlCalzone) Support more Github URL formats for iobroker url command
                                        • (AlCalzone) support github branch names with slashes on adapter install
                                        • (foxriber76) Add notification system (see DOCS LINK TODO)
                                        • (foxriver76) enhance setup (and setup first) with redis to all port configuration
                                        • (foxriver76) set connectionName for redis connections and simulator support
                                        • (bluefox) Added "http" and "stream" options for logs
                                        • (Apollon77) add seq logging support to js-controller
                                        • (foxriver76) Fix wrong logger pattern that caused issues on windows
                                        • (Apollon77) fix potential crash when restoring backup
                                        • (Apollon77) restore old logfile deletion logic because rotator library do not work as expected
                                        • (Apollon77) Optimize File DBs to lower write i/o by 50% (backup file is now renamed instead of rewritten)
                                        • (AlCalzone/Apollon77) Restructure DB code to allow easier new DB types
                                        • (Apollon77) enhance letsencrypt to also allow to specify alternative names for certs

                                        Optimizations and Fixes

                                        • (foxriver76) Detect adapter restart loops and stop restarting after 3 crashes (an adapter is considered "working" when no crash by an exception happens within 10 minutes)
                                        • (foxriver76) Fix failed logins if username is uppercase, be reworking user logic and caching
                                        • (bluefox) Set for def states the quality: QUALITY_SUBS_INITIAL
                                        • (AlCalzone) fix npm uninstall loglevel argument
                                        • (foxriver76) delete pids.txt when iobroker was stopped
                                        • (bluefox) Add missing attributes by multihost if Redis is used for objects/states, Remove unused settings from iobroker-dist.json, Remove pass and user from connection settings. Use options.auth_pass
                                        • (AlCalzone) Package-Manager: log which packages were (already) installed
                                        • (foxriver76) replace redis "KEYS" command by "SCAN" to optimize redis access performance
                                        • (foxriver76) optimize redis library usage to prevent errors on redis outages
                                        • (bluefox) Catch errors when plugins initialize. At least log will work and could be checked for errors.
                                        • (foxriver76) allow migration of instances to already existing host
                                        • (foxriver76) also allow <adapter>.<instance-nr> for install/add cli command
                                        • (AlCalzone) buffer streams that are piped to stdout to fix weird Windows logging cases
                                        • (foxriver76/AlCalzone) Optimize upgrade/downgrade logic for adapters, ask for a downgrade only if lower version is to be installed
                                        • (foxriver76) allow redis redis migration when changing host of redis - fix bug where process crashes when controller is running when migrating
                                        • (bluefox) Catch errors for subscribe on alias without target
                                        • (foxriver76) only perform auto scaling on alias if not null
                                        • (foxriver76) if repository request fails also use cached sources on updating repository
                                        • (foxriver76) prevent host deletion from same host - otherwise it will remove the system.host states but instances will still be on the removed host, because transfer happens to itself
                                        • (foxriver76) use instanceObjects from system.adapter.* object instead from io-package.json
                                        • (foxriver76) notify of errors on readFileCertificates to show permission problems etc.
                                        • (foxriver76) multihost discovery now logs ignored messages on debug and also logs the senders address
                                        • (foxriver76) sync up created objects on instance start and instance creation by using helper function in tools.js, e.g. .loglevel was missing on instance creation
                                        • (bluefox) Package-Manager: Filter empty packets out to suppress error message
                                        • (foxriver76) rename repository names for new installations and on updates to beta/stable
                                        • (foxriver76) rewrite collectDiagInfo to Promises and fix minor issue with it
                                        • (foxriver76) only scale aliases if target or source is represented by unit %
                                        • (foxriver76) create meta.user on file sync cli, if not existing
                                        • (Apollon77) also create meta.user on setup first if not existing
                                        • (foxriver76) fix enumInstances used by CLI commands
                                        • (foxriver76) when missing rights to access log dir do not crash hard anymore, instead fallback to default directory
                                        • (bluefox) Fix error if type of native data changed in the new version from basic type e.g. 'string' to 'object'.
                                        • (AlCalzone) Remove hardcoded references to GitHub master branch because newer repositories use "main"
                                        • (Apollon77) update _design objects also on js-controller upgrade/setup first
                                        • (Apollon77) optimize deletion of files in ioBroker file storage
                                        • (foxriver76) do not return an error if object does not exist on del*Object
                                        • (Apollon77) optimize logs when instance is restarted
                                        • (foxriver76) Preserve name field on instance object creation/update
                                        • (foxriver76) optimize parameters and flags on CLI
                                        • (foxriver76) Use yargs helper instead of building our own string output to allow showing --help for a specific command instead of the whole output and allow support for auto completion (iobroker _createCompletion >> ~/.bashrc)
                                        • (foxriver76, Apollon77) also accept pre-release version in some semver checks for dependencies
                                        • (foxriver76) replace outdated encryption mechanism of multihost
                                        • (Apollon77) prevent an endless loop when lua script initialization was not possible
                                        • (Apollon77) catch semver errors in upgrade commands
                                        • (foxriver76) ensure setAdapterInstanceEnabled can not hang
                                        • (Apollon77, foxriver, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources

                                        Developer relevant DEPRECATIONS/WARNINGS

                                        • (foxriver76) we warn if object not exists when setting a state via adapter.setState. Adjust your code that a state value is NOT set before the object is successfully created. If this deep check is NOT wanted for performance reasons the adapter needs to be initialized with strictObjectChecks = false!! (see DOCS LINK TODO)
                                        • (foxriver76) readFile should not validate meta object, we now throw on writeFile if id is no valid meta object
                                        • (AlCalzone) update Forbidden ID Characters: use Unicode properties to define which characters are allowed instead of blacklisting. For ASCII the allowed characters are the same as before - for other languages mainly character class of Unicode are allowed! (see DOCS LINK TODO)
                                        • (foxriver76) Throw on invalid setState objects; was logged as deprecated before
                                        • (foxriver76) remove getMessage shim, no adapter uses it anymore; was logged as deprecated before

                                        Developer relevant new Features

                                        • (foxriver76) use aes-192-cbc as encryption - backward compatible with current encryption, nothing to do for adapter-developers (see DOCS LINK TODO)
                                        • (bluefox) Add system view to filter for "folder" objects
                                        • (bluefox) add set/clearTimeout and set/clearInterval to adapter methods and check on unload that they were all cleared and clear if needed with logging, so developers are reminded to clean up!
                                        • (AlCalzone) Add ...Async version for getChannels - make sure to check before using or use correct js-controller version dependency!
                                        • (Apollon77) modularize databases into own npm packages and basically support adding new types of databases; add deprecation infos and logging to "old legacy" files in lib/states and lib/objects to not be used anymore; requires mostly updates in testing (see DOCS LINK TODO)
                                        • (foxriver76) allow to specify the instance for debug starts (iobroker debug adaptername.1)
                                        • (foxriver76) Enhance extendObject to allow to preserve specified fields (e.g. common.name)
                                        • (foxriver76) add adapter method getUserId

                                        Developer relevant Optimizations and Fixes

                                        • (foxriver76) implement maybeCallback and maybeCallbackWithError and use it in adapter.js
                                        • (AlCalzone) use fs-extra instead of mkdirp
                                        • (AlCalzone) read JSON files using fs-extra's readJSONSync
                                        • (AlCalzone) fix callback definitions in adapter.js, We have signatures for (almost) everything in @types/iobroker and we should use them
                                        • (AlCalzone) move from Promises to async/await in some places, use a single readyPromise instead of an array
                                        • (foxriver76) migrated ci tests to github actions
                                        • (foxriver76) resolve adapter main file as tools.js method
                                        • (foxriver76) optimize extendObject with def value
                                        • (AlCalzone) Handle existing, but undefined properties in validateSetStateObjectArgument
                                        • (foxriver76) also escape + char on regex, it's not forbidden
                                        • (bluefox) Set default state only for objects of type "state"
                                        • (AlCalzone) include folders in the result of getAdapterObjects
                                        • (Apollon77) Make sure to not trigger subscribes or messages when unload is called
                                        • (Apollon77) deleting a not existing object is handled as success instead of Not-Exists error
                                        • general dependency updates
                                        • code style optimizations

                                        Generell ist zu prüfen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!


                                        Wie Fehler melden?


                                        Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.

                                        Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.

                                        Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!

                                        Ingo

                                        M Offline
                                        M Offline
                                        Michael.K 0
                                        schrieb am zuletzt editiert von
                                        #36

                                        @apollon77
                                        DANKE, das Update hat fehlerfrei geklappt.
                                        Super !

                                        1 Antwort Letzte Antwort
                                        1
                                        • M Marty56

                                          @apollon77

                                          Ich hatte folgendes Fehlerbild schon mit dem Homematic Adapter gemeldet.
                                          Jetzt taucht es im Zusammenhang mit dem Alexa Adapter auf.
                                          Ich bekomme in Abstand von wenigen Millisekunden die Meldung, dass States database not connected ist.

                                          Wenn ich dann den Alexa Adapter stoppe und wieder starte, ist eine Weile (einige Minuten bis Stunden) Ruhe, um dann wieder anzufangen.

                                          Ich glaube nicht, dass das an dem Alexa Adapter liegt.

                                          Ich habe
                                          Objects type: file
                                          States type: redis

                                          Ansonsten Node 12, js-controller 3.2.16 und Alexa 3.8.0 installiert. Alexa 3.8.1 erzeugte denselben Fehler.

                                          alexa2.0	2021-02-20 11:21:43.008	info	(COMPACT) setState not processed because States database not connected
                                          alexa2.0	2021-02-20 11:21:43.007	info	(COMPACT) setState not processed because States database not connected
                                          
                                          apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #37

                                          @marty56 mehr logs bitte. Was passier im log bevor es los geht? Ggf mal debug nutzen.

                                          Bei dir ist außerdem die Besonderheit das du scheinbar Compact nutzt ;-)

                                          Also mehr log bitte als zwei Zeilen. IND zwar großzügig (auch von anderen Adaptern) um die Stelle herum wo es losgeht.

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          M 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          620

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe