diff options
author | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-02-04 01:23:43 -0500 |
---|---|---|
committer | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-02-04 01:52:13 -0500 |
commit | 0261e875679f1bf63c8d689da7fc7e014597885d (patch) | |
tree | 3f19cd74a0c1070944f75437f30b098d6ef2ffcb /roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd | |
download | selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.tar.gz selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.zip |
initial commit
Diffstat (limited to 'roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd')
-rw-r--r-- | roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd b/roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd new file mode 100644 index 0000000..c7d83de --- /dev/null +++ b/roles/nagios_client/files/usr/lib64/nagios/plugins/check_systemd @@ -0,0 +1,20 @@ +#!/bin/bash + +set -Eeu -o pipefail + +trap 'exit 3' ERR + +failed_units=$(systemctl --state failed --no-legend --plain | cut -d' ' -f1) + +if [ -n "$failed_units" ]; then + echo "CRIT - failed units: ${failed_units// /, }" + + for unit in $failed_units; do + sudo systemctl status -- "$unit" ||: + done + + exit 2 +else + echo 'OK - all units healthy' + exit 0 +fi |