Wie verschicke ich eine E-Mail, wenn ein Linux-Dienst angehalten wurde?

363
motam79

Ich habe den Systemd-Dienst, der ständig ausgeführt werden soll. Ich möchte per E-Mail benachrichtigt werden, falls der Dienst eingestellt wurde. Was ist der beste Weg, dies in Linux zu tun?

2
Wir verwenden Naemon, um unsere Systeme zu überwachen. Es ist einfach zu konfigurieren, um eine E-Mail zu senden, wenn ein Dienst ausfällt. Colin 't Hart vor 5 Jahren 0

2 Antworten auf die Frage

2
user2313067

Sie können die ExecStopPostEinstellung in Ihrer Dienstkonfiguration verwenden, die in systemd.service dokumentiert ist, um eine E-Mail zu senden, wenn der Dienst beendet wird. Wenn Sie keine E-Mail erhalten möchten, wenn der Dienst ordnungsgemäß beendet wird, können Sie die SERVICE_RESULTUmgebungsvariable (in systemd.exec dokumentiert ) im Skript verwenden, das die E-Mail sendet.

0
Prathu Baronia

Sie können ein kurzes Bash-Skript verwenden, das den Status des Dienstes überprüft und eine Benachrichtigung ausgibt, wenn er nicht ausgeführt wird. Für Push-Benachrichtigungen können Sie Pushover verwenden, das nach dem Erstellen von Sicherheitsschlüsseln ziemlich einfach in ein Bash-Skript integriert werden kann. Ihr Bash-Skript kann crontaballe 5 Minuten zum periodischen Ausführen hinzugefügt werden (im Wesentlichen für jeden beliebigen Zeitraum).