Be notified via e-mail when a systemd unit enters failed state. Based on this blog post.
-
Decide where you want to install things.
INSTALL_DIR=/usr/local/src/systemd-unit-status-mail
-
Clone this repository.
$ git clone https://github.com/agross/systemd-unit-status-mail.git "$INSTALL_DIR" Cloning into 'systemd-unit-status-mail'...
-
Install the systemd unit.
$ "$INSTALL_DIR/install" Linking /usr/local/src/systemd-unit-status-mail/unit-status-mail@.service Linking /usr/local/src/systemd-unit-status-mail/unit-status-mail
-
Tell
unit-status-mail@.service
who should receive notifications.$ systemctl edit unit-status-mail@.service # Editor opens. Add these lines and save the file. [Service] Environment=MAILTO=adam@example.com,eve@example.com
-
Configure units that you want to be notified about.
$ systemctl edit some.service # Editor opens. Add these lines and save the file. [Unit] OnFailure=unit-status-mail@%n.service
$ UNIT=auditd.service
$ systemctl start unit-status-mail@$UNIT.service
$ systemctl status unit-status-mail@$UNIT.service
● unit-status-mail@auditd.service.service - Unit Status Mailer Service
Loaded: loaded (/usr/local/src/systemd-unit-status-mail/unit-status-mail@.service; linked; vendor preset: disabled)
Drop-In: /etc/systemd/system/unit-status-mail@.service.d
└─override.conf
Active: inactive (dead)
Jan 22 18:45:11 fedja.wghoch4.local systemd[1]: Starting Unit Status Mailer Service...
Jan 22 18:45:11 fedja.wghoch4.local unit-status-mail[13876]: <13>Jan 22 18:45:11 /etc/systemd/system/unit-status-mail: Status mail sent to adam@example.com,eve@example.com for unit auditd.service
Jan 22 18:45:13 fedja.wghoch4.local systemd[1]: Started Unit Status Mailer Service.
To get all unit-status-mail@.service
settings use
systemctl cat unit-status-mail@.service
andsystemctl show unit-status-mail@it-does-not-matter.service
.