Random Server Restarts nach Update von 1.2.0 auf 1.3.0
Hi, hab gestern meine 3 Repetier Server die auf Raspis laufen aktualisiert. Und 2 davon gestern/heute verwendet und bei beiden hatte ich zufällige Neustarts des Dienstes so wie es aussieht. Auf dem einen nach ca 20min ... nochmal gestartet danach lief der selbe druck nach ca 40min durch (Repetier-Firmware). Und dann hatte ich gestern Abend auf dem anderen Server/Drucker (Voron Klipper) noch einen 10h Druck gestartet, der ist nach ca. 6h ausgestiegen. Vorher lief alles ohne Probleme. Es wurde nichts außer der Repetier-Server Version geändert. Ausgabe ist bei beiden im syslog gleich:
Mar 12 03:43:30 RepetierServer systemd[1]: Starting Time & Date Service...
Mar 12 03:43:30 RepetierServer dbus-daemon[461]: [system] Successfully activated service 'org.freedesktop.timedate1'
Mar 12 03:43:30 RepetierServer systemd[1]: Started Time & Date Service.
Mar 12 03:43:47 RepetierServer systemd[1]: RepetierServer.service: Main process exited, code=killed, status=6/ABRT
Mar 12 03:43:47 RepetierServer systemd[1]: RepetierServer.service: Failed with result 'signal'.
Mar 12 03:43:47 RepetierServer systemd[1]: RepetierServer.service: Service has no hold-off time (RestartSec=0), scheduling restart.
Mar 12 03:43:47 RepetierServer systemd[1]: RepetierServer.service: Scheduled restart job, restart counter is at 1.
Mar 12 03:43:47 RepetierServer systemd[1]: Stopped Repetier-Server 3D Printer Server.
Mar 12 03:43:47 RepetierServer systemd[1]: Starting Repetier-Server 3D Printer Server...
Mar 12 03:43:47 RepetierServer systemd[1]: Started Repetier-Server 3D Printer Server.
Mar 12 03:46:00 RepetierServer dhcpcd[728]: wlan0: Router Advertisement from fe80::7642:7fff:fe40:eade
Mar 12 03:48:13 RepetierServer systemd[1]: systemd-timedated.service: Succeeded.
Mar 12 03:48:14 RepetierServer dbus-daemon[461]: [system] Activating via systemd: service name='org.freedesktop.timedate1' unit='dbus-org.freedesktop.timedate1.service' requested by ':1.758' (uid=0 pid=7016 comm="timedatectl ")
Gibt es noch irgend ein Logfile das aufschlussreicher für die Ursache sein könnte?
Gibt es noch irgend ein Logfile das aufschlussreicher für die Ursache sein könnte?
Comments
zuerst würde ich zum Zeitpunkt in die server.log nachsehen. Eventuell gibt es da noch einen Hinweis das er irgend etwas versucht hat, dann wüste man genauer wo man suchen müsste.
Ansonsten wäre ich sehr dankbar wenn du wie in
https://www.repetier-server.de/faq/debugging-crashes-hangs-on-linux/
beschrieben ein komplettes backtrace erzeugen könntest. Am besten bei dem pi der das häufiger macht, dann must du nicht so lange warten. Mit dem Backtrace weiß ich ziemlich genau wo er abstürzt und sollte es schnell eingrenzen können.
Hier noch der entsprechende auszug von gestern aus dem server.log:
und von eben grade aus gdb:
Hoffe das hilft weiter
Etwas problematisch ist, das es die MQTT Bibliothek ist, die entschieden hat das Program zu beenden. Mit buffer voll könnt eich ja leben, aber diese Entscheidung den Server zu beenden ist nicht akzeptabel.
Jetzt muss ich nur noch rausbekommen wie ich das reproduzieren kann. Mein MQTT ist Mosquito da sich lokal auf einem Pi laufen hab mit Homeassistant.
Was für ein MQTT Broker verwendest du und ist der möglicherweise zeitweise schlecht/langsam erreichbar. Bei Trennung verbindet er sich ja einfach neu. Die Meldung deutet ja darauf hin das er die Daten nicht los wurde und vermutlich dann entschieden hat das Program zu crashen. Werd das jedenfalls genauer im mqtt Quellcode untersuchen wo die Meldung erzeugt wird und wo das abort her kommen kann.
Problem ist das gleiche wie wo
2022-03-12 03:43:47: MQTT error [-12]: No more messages can be buffered
gemeldet wird, nur das der Weg nicht abgefangen wurde und wenn dann MQTT Probleme hat stoppt der Server.
Den Absturz kann ich damit abfangen, die Ursache ist aber wie die Meldung vermuten lässt eine Überforderung des MQTT Brokers. Er ist zu langsam um die Daten schnell genug zu verarbeiten oder die Verbindung ist zu langsam.
FHEM kannte ich noch nicht. Aber aussetzer von ein paar sekunden können schon mal stören. In deinem Fall war es weil du alle events weiter gibst (hoffe meine Filter sind noch drin). Wenn du die nicht brachst kannst du die auch abschalten. Status daten werden alle 5 sekunden gepusht, da mal was zu verpassen ist nicht sonderlich schlimm. Nur bei interaktiver Kommunikation ist so was störend.