NEWS
"admin.0 Restart loop detected" und keine Trigger mehr
-
@david-g
Moin david-g,
ich habe das "latest" Repository in Nutzung, weil ich von dort ein paar Adapter installiert habe, die ich bis dato nicht im "stable" hatte, zumindest nicht in einer Version, die alle Funktionen unterstützt haben, die ich brauchte (zum Beispiel den "zwave2.0" oder den "homepilot20.0").
Aber den "zwave2.0" und den "enocean" werde ich bald deinstallieren, weil ich nur noch eine handvoll Geräte habe, die ich auch durch Shelly-Technik ersetzen möchte... -
@crunchip
Hallo crunchip,
die mounts sind fehlerhaft, weil die zugehörigen Laufwerke offline sind und nur bei Bedarf hochgefahren werden - ziehen sonst zuviel Energie. Aber wenn sie hochgefahren sind, werden sie fehlerfrei gemounted. Somit sollte das kein Problem sein.
Was mich aber stutzig macht ist, dass die Instanzalias-manager.0
deaktiviert ist. Ich kann mich nicht erinnern, dass ich das bewusst gemacht habe
Und warum das Aliasalias.0.Wohnzimmer Klimaanlage Verbrauch und Schalter
fehlen soll, verstehe ich auch nicht. Im Alias-Objektbaum wird es angezeigt, alle dort definierten Datenpunkte sind mit validen werten gefüllt (habe ich über die http-Schnittstelle des Shelly-Zwischensteckers geprüft) und ich kann das Gerät auch ein- und ausschalten... -
@klausstoertebeker sagte in "admin.0 Restart loop detected" und keine Trigger mehr:
weil ich von dort ein paar Adapter installiert habe,
dann stellt man sofort nach der einen Installation wieder zurück auf stable.
Sonst ist anschließend alkes auf Beta-Status -
@codierknecht
Hallo codierknecht (cooler Nickname),
das mit dem fehlerhaften Alias habe ich schon in meiner Antwort an crunchip erläutert. Und ich hatte noch nie Probleme mit Leerzeichen oder Umlauten, denn alle meine Aliase enthalten zumindest Leerzeichen.
Bei Objekten, die ich unter der Instanzuserdata_0.0
anlege, nehme ich aber grundsätzlich keine Leerzeichen, sondern immer gleich Unterstriche (hmkomisch, oder? Jetzt, wo ich darüber schreibe...). Umlaute nehme ich da allerdings auch...
-
@klausstoertebeker
Ich schrieb ja schon: Muss jetzt nicht unbedingt dir Ursache sein.
Aus Entwicklersicht ist man es allerdings gewohnt, sowas zu vermeiden.Bei Objekten, die ich ... anlege, nehme ich aber grundsätzlich keine Leerzeichen
Geht auch gar nicht. Die werden automatisch durch Unterstriche ersetzt.
OT: Wenn der "alias-manager" die so anlegt, ist das zumindest für mich ein Grund mehr, auf das Ding zu verzichten.
-
@homoran
Ok, danke für den Tipp. Dazu gleich folgende Frage:
Wenn ich das Repository wieder aufstable
umgestellt habe, gibt es dann eine Möglichkeit, unter Umständen auch über einen Kommandozeilenbefehl, alle Adapter so zu updaten, dass sie aus demstable
Repository installiert werden? Zum Beispiel folgendes Szenario:
Adapteradmin
hat imstable
die Version x.y.z und imlatest
die Version x.y.z.alpha. Installiert habe ich aus demlatest
Repository die Version x.y.z.alpha. Wenn ich jetzt vonlatest
aufstable
umschalte und den Update-Voodoo durchführe (wie auch immer der aussehen mag), ist dann dieadmin
-Version x.y.z installiert?
Oder muss ich das für jeden einzelnen Adapter dann so machen wie zum Beispiel hier (https://www.smarthome-tricks.de/software-iobroker/iobroker-bestimmte-version-eines-adapters-installieren/) beschrieben ist? -
Muss für jeden Adapter ggfls. einzeln gemacht werden.
-
@thomas-braun
seufz Dann weiß ich ja, was ich heute zu tun habe... -
Ich würde das stable-Repo aktivieren, aktualisieren und dann in der Kommandozeile per
iob update
schauen, welche Adapter in einer dann höheren Version installiert sind. Diese dann per
iob upgrade adapter@stabile.versions.nummer
auf eine stabile Version drücken.
Vielleicht aber auch nicht bei allen Adaptern sondern nur bei 'auffälligen'.
Ansonsten würde ich abwarten, bis eine stabile Version die derzeitige Beta-Version überholt. -
@thomas-braun
Ich habe eben mal über mein Smartphone geschaut, wie weit sich die Adapterversionen imstable
vomlatest
unterscheiden. Und das ist bei einigen Adaptern schon ein ganzes Major-Release
Ich glaube, dass muss ich mal mit einer Neuinstallation auf einem anderen Raspberry probieren...
Was mich nur wundert ist, dass der Fehler oben aufgetreten ist, ohne dass ich vorher irgendwas aktualisiert habe. Das habe ich erst im Nachhinein gemacht in der Hoffnung, dass sich der Fehler dadurch "rausupdated"... -
@klausstoertebeker said in "admin.0 Restart loop detected" und keine Trigger mehr:
ich habe das "latest" Repository in Nutzung, weil ich von dort ein paar Adapter installiert habe, die ich bis dato nicht im "stable" hatte, zumindest nicht in einer Version, die alle Funktionen unterstützt haben, die ich brauchte (zum Beispiel den "zwave2.0" oder den "homepilot20.0").
Wenn ein Adapter bzw. eine Release nicht im STABLE Repository aufscheint, dann ist diese entweder bekanntermaßen fehlerhaft, brand-neu und noch im Test oder der Dev hat schlicht und einfach vergessen die Release zu aktualisieren. In letzterem Fall bitte ein Issue zur Erinnerung bzw. zur Abklrung der Ursache im Adapterrepository erstellen.
EDIT:
Mit ws aus dem Latest würde ich derzeit auch vorsichtig sein wenn du nicht testen willst.
Die 3.x.x ist ein REWRITE in Typescript und da kommen fast täglich neue Versionen raus.Und noch was:
Entweder hab ich es hier übersehen oder es fehlt noch:
Welche Meldungen gibt den ADMIN aus bevor er crashed? -
@mcm1957
Danke für die Info. Jetzt wird ein Schuh draus, dass der ws-Adapter sich so oft updaten wollte...
Würde ein log helfen, um zu schauen, was deradmin
-Adapter vor einem Absturz meldet? Ich habe die Instanz auf "debug" eingestellt und lasse die Log-Einträge über den AdapterlogParser
laufen. Dann gibt's das als JSON-formatierten Text... -
a) Natürlich hilft ein Log in dem sthet warum admin Abstürzt um irgendwie zu evaulieren warum admin abstürzt :-). Aber bitte zeig das ganz normale log ohne zwischengeschaltete Software irgendwelcher Art - also das was du unter logs siehst. Ganz normaler Text ist naturgemäß am besten zu lesen.
Und mm besten gar NICHTs editieren - ausgenommen allfällige sensitive Daten wie Passwörter oder Zugriffstoken. (Wenn die ein Adapter logged, dann auch ruhig ein Issue beim Adapter aufmachen - best praxis wäre die gar nicht zu loggen)
b) Generell solltest du das BETA (LATEST) Repository NICHT für produktive Systeme verwenden. Auch admin
Edit:
Bezüglich DOWNGRADEs
Wenn du im Admin eine niedrigere Version als verfügbar siehst, dann sollte die auch bei einem "Update" installiert werden. Eine explizite Installation via Versionsangabe sollte nach meiner Kenntnis nicht nochtwendig sein. ABER downgrades über Major Grenzen sind auch nicht wirklich ohne. Adapter konvertieren ggF bei einem Major Upgrade Dinge. Bei einem Major Downgrade unterstützt m.W. nach kein Adapter eine Konvertierung. Persönlich würd ich major Downgrades niht global machen sondern sehr genau schaun was da denn geändert wurde und diese ggF. auch nicht machen. Aber leider kann man da nichts generell anwendbares sagen.So und nun bitte mal um das Log des Admin
-
@mcm1957 sagte in "admin.0 Restart loop detected" und keine Trigger mehr:
Wenn du im Admin eine niedrigere Version als verfügbar siehst, dann sollte die auch bei einem "Update" installiert werden. Eine explizite Installation via Versionsangabe sollte nach meiner Kenntnis nicht nochtwendig sein.
Nein, eine niedrigere Versionsnummer musst du immer ausdrücklich angeben. Egal aus welchem Repo die stammt. npm kennt keine Gewichtung nach Quelle, anders als z. B. apt. Da kann man das Repo bevorzugen. Tun wir (ich) z. B. bei der nodesource-Quelle für das nodejs-Paket.
-
-
@mcm1957
Moin mcm1957,
zu dem Log eine kurze Frage:
Natürlich kann ich das herunterladen und als Textdatei zur Verfügung stellen. Aber das ist ziemlich groß, vor allem, wenn der admin-Adapter mitdebug
-Loglevel läuft. Ich kann das Log im ioBroker ja nach den Quellen filtern, aber wie sichere ich dann dieses gefilterte Log? Wenn ich auf Herunterladen klicke, wird trotz Filter immer das ganze Log exportiert... -
-
Ich habe ioBroker mittlerweile gelöscht und neu installiert - Gott sei Dank hatte ich valide Backups, so dass das relativ schnell von der Hand ging.
Der Plan dabei war, dass ich alle Adapter, die imstable
-Repository vorhanden sind, auch von dort installiere. Allerdings habe ich nicht bedacht, dass nach dem Wiederhestellen des Backups ALLE Einstellungen wiederhergestellt wurden und daher auch daslatest
-Repository wieder eingestellt wurde.
nachdem ich das geändert hatte, habe ich dann alle Adapter manuell auf die aktuellestable
-Version aktualisiert. Und dabei bin ich auf folgende Herausforderung gestoßen:
In diesem Forenbeitrag wird verkündet, dass der js-controller jetzt in der Version 7 imstable
-Repository bereitgestellt wird. Wenn ich jedoch den Befehliobroker update
bei aktiviertem
stable
-Repository ausführe, wird dort als verfügbare Version 4.0.24 angezeigt.
Ebenso verhält es sich mir demadmin
-Adapter, der ja offenbar eine Major-Version von 7 haben muss, um mit dem js-controller zusammenarbeiten zu können.
Installiert bei mir ist die Version 7.4.21, als verfügbare Version wird mir jedoch 6.3.5 angezeigt. Ich habe versucht, die Version 6.3.5 zu installieren, was jedoch dazu führte, dass ich nicht auf die Admin-Oberfläche zugreifen konnte. Daher habe ich nach dem Aktivieren deslatest
-Repository wieder auf die Version 7.4.21 aktualisiert und das Repository wieder umgestellt (wie Thomas Braun empfohlen hat).
Kann es sich um einen Fehler imstable
-Repository handeln?
Ansonsten habe ich immer noch keine Trigger (weder ereignis- noch zeitgesteuerte), so dass sich das mit der Hausautomatisierung in überschaubaren Grenzen hält
Auch scheint dieadmin.0
-Instanz nicht abzustürzen, sondern das Problem scheint bei dersocketio.0
-Instanz zu liegen. Denn im Log desadmin
-Adapters wird gemeldet, dass diesocketio.0
-Instanz die Verbindung zu mir als externem Nutzer unterbricht und dann wiederherstellt. -
Ich hab keinen Überblick was da nun wie eingestellt ist.
Gib mal die Langfassung voniob diag
zum Besten.
-
@klausstoertebeker
Ich vermute mal dass du nach dem Umstellen des Repos nicht auf "Nach Updates suchen" geklickt hast. Damit enthält das Repo alte Daten.