aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorGravatar Ton Voon <tonvoon@users.sourceforge.net> 2003-03-24 02:21:02 +0000
committerGravatar Ton Voon <tonvoon@users.sourceforge.net> 2003-03-24 02:21:02 +0000
commit75264bc16a77ee1ebfcb9859e649c3cf0dc2fee5 (patch)
tree9ee98a7b17b9a04a51f1378e6bb81514ef111d06 /tools
parent38ffa48b64165325a2eb4a625cbb05e1dfb0d348 (diff)
downloadmonitoring-plugins-75264bc16a77ee1ebfcb9859e649c3cf0dc2fee5.tar.gz
Sends email if non-zero return code from command
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@455 f882894a-f735-0410-b71e-b25c423dba1c
Diffstat (limited to 'tools')
-rwxr-xr-xtools/mail_error22
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/mail_error b/tools/mail_error
new file mode 100755
index 00000000..4349c21d
--- /dev/null
+++ b/tools/mail_error
@@ -0,0 +1,22 @@
+#!/bin/bash
+# mail_error -o file -m email_address command
+# Runs command and redirects all output to file
+# If command rc != 0, sends file to email_address
+
+function die { echo $1 ; exit 1; }
+
+while getopts "o:m:" c; do
+ case $c in
+ o) output_file=$OPTARG;;
+ m) email=$OPTARG;;
+ \*) echo "oops";;
+ esac
+done
+shift $(($OPTIND-1))
+echo "output_file=$output_file email=$email"
+
+[[ -z $1 ]] && die "Must specify command"
+
+if ! "$@" > $output_file 2>&1 ; then
+ mail -s "mail_error fail: $@" $email < $output_file
+fi