Wenn Sie eine systemd-Dienstdatei verwenden, um Ihren Dienst zu starten, fügen Sie Ihrer Dienstdatei die folgenden Zeilen hinzu, von wo aus Sie Ihren Dienst starten:
[Service]
Type=simple
ExecStart=here will be your service executable name
Restart=always
RestartSec=0
-
Restart=
Konfiguriert, ob der Dienst neu gestartet werden soll, wenn der Dienstprozess beendet, beendet oder ein Timeout erreicht wird. Akzeptiert einen der folgenden Werte:
no
,on-success
,on-failure
,on-abnormal
,on-watchdog
,on-abort
oderalways
. Wenn aufno
gesetzt (Standardeinstellung). -
RestartSec=
Konfiguriert die Ruhezeit vor dem Neustart eines Dienstes (wie mit
Restart=
konfiguriert). ). Akzeptiert einen Wert ohne Einheit in Sekunden.
Diese beiden Optionen müssen unter [Service]
stehen -Tag in einer Dienstdatei.
Ich habe dafür monit monit verwendet. Ein Beitrag bei askfedoraproject legt mir nahe, dass dies immer noch eine gute Möglichkeit ist, Prozesse zu überwachen und automatisch neu zu starten.
Es bietet eine gute granulare Konfiguration der Überwachungsfunktionen, wie man entscheidet, ob ein Prozess fehlgeschlagen ist, und Maßnahmen, die ergriffen werden müssen, um ihn wiederherzustellen.