Refactor check-dummy.sh to add options for warning, critical and unknown status
This commit refactors the check-dummy.sh script to include options for warning, critical and unknown status. The script now accepts the following command line arguments: --ok (default), --warning, --critical and --unknown. The exit codes have also been updated to reflect these new statuses.
This commit is contained in:
parent
a1cd78b7e5
commit
b01af8010d
@ -3,13 +3,22 @@
|
||||
#
|
||||
#/
|
||||
#/ Usage:
|
||||
#/ check-dummy.sh
|
||||
#/ check-dummy.sh [--ok|--warning|--critical]
|
||||
#/
|
||||
#/ Does not check anything. Always gives OK!
|
||||
#/ Does not check anything.
|
||||
#/
|
||||
#/ Options:
|
||||
#/ -o, --ok Trigger a OK status (default)
|
||||
#/ -w, --warning Trigger a warning
|
||||
#/ -c, --critical Trigger a critical warning
|
||||
#/ -u, --unknown Trigger a unknown status
|
||||
#/
|
||||
#/
|
||||
#/ Exit Codes:
|
||||
#/ 0 Everything OK
|
||||
#/ 1 Warning level exceeded
|
||||
#/ 2 Critical level exceeded
|
||||
#/ 3 Unknown status
|
||||
#/
|
||||
|
||||
Usage() {
|
||||
@ -18,8 +27,8 @@ Usage() {
|
||||
|
||||
GetOptions() {
|
||||
# https://stackoverflow.com/a/29754866
|
||||
OPTIONS=''
|
||||
LONGOPTS=''
|
||||
OPTIONS='owcu'
|
||||
LONGOPTS='ok,warning,critical,unknown'
|
||||
|
||||
# -use ! and PIPESTATUS to get exit code with errexit set
|
||||
# -temporarily store output to be able to check for errors
|
||||
@ -30,7 +39,6 @@ GetOptions() {
|
||||
# e.g. return value is 1
|
||||
# then getopt has complained about wrong arguments to stdout
|
||||
Usage
|
||||
exit 2
|
||||
fi
|
||||
|
||||
# read getopt's output this way to handle the quoting right:
|
||||
@ -39,23 +47,42 @@ GetOptions() {
|
||||
# now enjoy the options in order and nicely split until we see --
|
||||
while true; do
|
||||
case "$1" in
|
||||
-o|--ok)
|
||||
rval=0
|
||||
rmsg="OK"
|
||||
shift
|
||||
;;
|
||||
-w|--warning)
|
||||
rval=1
|
||||
rmsg="WARNING"
|
||||
shift
|
||||
;;
|
||||
-c|--critical)
|
||||
rval=2
|
||||
rmsg="CRITICAL"
|
||||
shift
|
||||
;;
|
||||
-u|--unknown)
|
||||
rval=3
|
||||
rmsg="UNKNOWN"
|
||||
shift
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
*)
|
||||
echo "URL UNKNOWN - ${1} is not a valid parameter"
|
||||
echo "DUMMY UNKNOWN - ${1} is not a valid parameter"
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -z ${1+x} ]; then
|
||||
echo "URL UNKNOWN - url not given"
|
||||
exit 3
|
||||
else
|
||||
url=${1}
|
||||
fi
|
||||
}
|
||||
echo "DUMMY OK"
|
||||
exit 0
|
||||
script_name=$(basename "${0}")
|
||||
script_dir=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
rval=0
|
||||
rmsg="OK"
|
||||
GetOptions "$@"
|
||||
|
||||
echo "DUMMY $rmsg"
|
||||
exit $rval
|
Loading…
Reference in New Issue
Block a user