Pokud ke spuštění služby používáte soubor služby systemd, přidejte do souboru služby, odkud službu spouštíte, následující řádky:
[Service]
Type=simple
ExecStart=here will be your service executable name
Restart=always
RestartSec=0
-
Restart=
Konfiguruje, zda má být služba restartována, když proces služby skončí, je zabit nebo je dosažen časový limit. Nabývá jedné z následujících hodnot:
no
,on-success
,on-failure
,on-abnormal
,on-watchdog
,on-abort
neboalways
. Pokud je nastaveno nano
(výchozí). -
RestartSec=
Nakonfiguruje čas přechodu do režimu spánku před restartováním služby (jak je nakonfigurováno pomocí
Restart=
). Nabírá hodnotu bez jednotek v sekundách.
Tyto dvě možnosti musí být pod [Service]
tag v souboru služby.
Použil jsem k tomu monit monit. Příspěvek na askfedoraproject mi naznačuje, že je to stále dobrý způsob, jak monitorovat procesy a automaticky je restartovat.
Poskytuje dobrou granulární konfiguraci monitorovacích funkcí, jak rozhodnout, zda proces selhal, a akce, které je třeba podniknout k jeho obnovení.