解決策 1:
systemd ユニットは、ユニットが失敗したときにユニット (またはそれ以上) をアクティブにする OnFailure をサポートします。
のようなものを入れることができます [email protected]%n
そして [email protected]
を作成します 必要な指定子 (おそらく少なくとも %i が必要になるでしょう) を使用して、通知を送信するスクリプトまたはコマンドを起動できるサービスです。
http://northernlightlabs.se/systemd.status.mail.on.unit.failure で実用的な例を見ることができます
解決策 2:
私の通知方法:
/etc/systemd/system/[email protected]
[Unit]
Description=Sent email
[Service]
Type=oneshot
ExecStart=/usr/bin/bash -c '/usr/bin/systemctl status %i | /usr/bin/mailx -Ssendwait -s "[SYSTEMD_%i] Fail" [email protected]'
systemd に追加:
systemctl enable /etc/systemd/system/[email protected]
他のサービスで追加:
[Unit]
[email protected]%i.service
構成をリロードします:
systemctl daemon-reload