aufgrund eines Problems zwischen MQTT und Z2M habe ich aus Bequemlichkeit eine Wiederherstellung gestartet, und die dauert immer noch (mehr als 9 Stunden auf einem Beelink). Ist das normal (ich vermute mal nein )
Die Wiederherstellung ist in der Regel sehr schnell
Am Ende der Wiederherstellung sollte Gladys normalerweise neu starten, also schaltet sie sich aus und Docker sollte sie neu starten (wenn du in deiner Konfiguration auf restart=always bist).
Möglicherweise ist dieser Vorgang nicht korrekt erfolgt, du kannst einen ausführen:
docker restart gladys
Ansonsten schau dir die Logs von Gladys an, um mehr Informationen zu erhalten!
Ich habe ein docker restart gladys durchgeführt und meine Konfiguration erfolgreich wiederhergestellt.
Ich habe ein docker inspect gladys durchgeführt und alles scheint in Ordnung zu sein:
Wann datiert die Sicherung, die du wiederhergestellt hast?
Wenn du eine Sicherung wiederhergestellt hast, die vor DuckDB erstellt wurde (Gladys Assistant 4.45 : DuckDB, une révolution dans Gladys ! ⚡), dann muss deine Instanz die Migration zu DuckDB lokal neu durchführen, und anschließend kannst du die historischen Daten wiederherstellen.
Andernfalls kannst du die Protokolle der Wiederherstellung überprüfen und sehen, ob alles reibungslos verlaufen ist (gehe in deine Gladys-Protokolle zurück, du solltest sie haben)
Eine weitere Möglichkeit: Führe eine erneute Wiederherstellung durch und beobachte live die Protokolle, um sicherzustellen, dass alles reibungslos verläuft Vielleicht gibt es einen besonderen Fall in deinen historischen Daten, der die Wiederherstellung dieser verhindert.
Verwendest du die MQTT-Integration über den Docker-Container, der von Gladys gestartet wurde, oder den du manuell gestartet hast?
Es ist möglich, dass du die Integration neu starten musst. Normalerweise sollte sie nach einer Wiederherstellung von selbst wieder hochfahren (den Container neu starten, wenn du den von Gladys gestarteten Container verwendest), aber vielleicht hat das in deinem Fall nicht funktioniert.
Nach allem, was du erlebst, ist es möglich, dass die Wiederherstellung in deinem Fall fehlgeschlagen ist. Die Protokolle werden uns mehr darüber verraten, was passiert ist
Verwendest du die MQTT-Integration über den Docker-Container, der von Gladys gestartet wurde oder den du manuell gestartet hast?
Ja, ich verwende die MQTT-Integration über den Docker-Container, der von Gladys gestartet wurde.
Laut den Logs scheint es ein Problem bei der Wiederherstellung der migrierten Datenbank zu geben. Ist es möglich, die verlorenen Daten manuell wiederherzustellen?
Vielen Dank für dein Feedback, ich habe nachgeforscht und es handelt sich um einen Bug von DuckDB, ich habe ein GitHub-Issue gefunden, das dieses Problem behandelt und anscheinend wurde es in Version 1.1 von DuckDB behoben:
Der Fix:
Ich arbeite morgen an Gladys, ich werde schauen, ob ich DuckDB aktualisieren kann und das wird in der nächsten Version veröffentlicht!
Mit diesem Fix solltest du normalerweise ohne Probleme wiederherstellen können.
Das ist durchaus möglich, aber es erfordert etwas Geschick
Wenn du in den Ordner /var/lib/gladysassistant/backups/restore gehst, solltest du einen Ordner « _parquet_folder » finden, der die Sensordaten im Parquet-Format enthält.
Wenn du diesen Ordner irgendwo speicherst (z. B. auf deinem privaten Computer) und DuckDB installierst, kannst du diese Parquet-Dateien in eine .duckdb-Datei importieren:
Anschließend musst du diese Datei in den Ordner /var/lib/gladysassistant mit dem Namen gladys-production.duckdb importieren (vergiss nicht auch die WAL-Datei).
Aber wenn du ein bisschen Geduld hast, werde ich DuckDB aktualisieren und normalerweise wird das dein Problem in der nächsten Version von Gladys beheben
Hallo,
Ich habe das gleiche Problem mit der Wiederherstellung von gladysplus und möchte nicht alle Systemverläufe löschen. Eigentlich sollten alle Szenen nach dem nächsten Release verfügbar sein.
Die Frage ist: Wann wird es veröffentlicht?
Trotz meiner Bemühungen konnte ich den Fehler nicht reproduzieren. Ich habe auf verschiedenen Servertypen getestet, und bei mir funktionierte die Wiederherstellung immer.
Dennoch habe ich DuckDB in der letzten Version von Gladys auf 1.1.1 aktualisiert, in der Hoffnung, dass dies das Problem bei euch behebt:
Falls ihr Gladys erneut wiederherstellt, wäre es ratsam, von einer „gesunden“ Basis auszugehen. Ich würde euch empfehlen:
docker stop gladys && docker rm gladys
Alle Gladys-Dateien löschen, indem ihr folgendes ausführt:
sudo rm -rf /var/lib/gladysassistant
(Achtung, diesen Befehl nur in einer Umgebung ausführen, die ihr wirklich zerstören wollt. Dieser Befehl löscht alles.)
Die neueste Version von Gladys herunterladen:
docker pull gladysassistant/gladys:v4
Dann Gladys mit dem Befehl von der Website neu starten:
Haltet mich auf dem Laufenden, ich hoffe, dass es mit diesem Update für euch funktioniert
Hallo,
Zuerst einmal ein großes Dankeschön an dich, @pierre-gilles, für die schnelle Bearbeitung des Problems, das wir mit @Tolkyen haben, aber auch für all die Ratschläge, die mir geholfen haben, bei der Installation von Gladys auf meinem neuen Mini-PC voranzukommen.
Vielleicht habe ich etwas vergessen oder eine falsche Manipulation vorgenommen, aber nach der Ausführung des folgenden Befehls werden diese Zeilen angezeigt: