Skip to content
Snippets Groups Projects
zz_template_check_xyz 2.20 KiB
#!/bin/bash
# ======================================================================
#
# Check !!!describe what it does!!!
#
# ----------------------------------------------------------------------
# 202n-nn-nn  v0.0  <name@unibe.ch>  initial version
# ======================================================================


. `dirname $0`/inc_pluginfunctions

# ----------------------------------------------------------------------
# functions
# ----------------------------------------------------------------------

function showHelp(){
cat <<EOF
______________________________________________________________________

CHECK_XYZ !!! add a short description

(c) Institute for Medical Education - University of Bern
Licence: GNU GPL 3
______________________________________________________________________

!!! Add some information what the check does.

!!! add / remove params in syntax, options and example

SYNTAX:
`basename $0` [-w WARN_LIMIT] [-c CRITICAL_LIMIT]

OPTIONS:

    -w VALUE       cpu usage warning level  (default: 75)
    -c VALUE       cpu usage critical level (default: 90)

    -h or --help   show this help.

PARAMETERS:

    None.

EXAMPLE:
`basename $0` -w 60 -c 80

EOF
}
# ----------------------------------------------------------------------
# MAIN
# ----------------------------------------------------------------------

# --- check param -h
case "$1" in
    "--help"|"-h")
        showHelp
        exit 0
        ;;
    *)
esac


# --- check required tools
# !!! add needed tools here
# ph.require bc top


# set default / override from command line params
typeset -i iWarnLimit=`     ph.getValueWithParam 75 w "$@"`
typeset -i iCriticalLimit=` ph.getValueWithParam 90 c "$@"`


# !!! add some logic for a check and fetch values from some output


# !!! set status 
# ph.setStatusByLimit $iMyvalue $iWarnLimit $iCriticalLimit
# or with a condition:
# ph.setStatus warning
# ph.setStatus critical


# !!! generate output
# ph.status "my check sends value $iMyValue"


# --- performance data usage
# !!! add counters if Icinga must show a chart
# ph.perfadd "checkname-countername"    "${iMyValue}" $iWarnLimit $iCriticalLimit 0 100


# ph.exit

# ----------------------------------------------------------------------