Add 'nagios_startstop.sh'

master
Eric Loyd 4 years ago
parent 1ee36e2d76
commit 3a953927b6

@ -0,0 +1,50 @@
#!/bin/sh
# Set a default path
PATH="/usr/bin:/bin"
# This is where we write to Nagios command pipe
# Make sure it's writeable (follow Nagios plugin exit code API)
commandfile="/usr/local/nagios/var/rw/nagios.cmd"
if [ ! -w "$commandfile" ]; then
echo "ERROR: Cannot write to $commandfile"
exit 2
fi
# Send to Nagios
send_nagios() {
now=`date +%s`
/bin/printf "[%lu] $*\n" $now > $commandfile
}
# Stop executing service checks
stop_engine() {
send_nagios "STOP_EXECUTING_SVC_CHECKS"
send_nagios "STOP_EXECUTING_HOST_CHECKS"
send_nagios "STOP_ACCEPTING_PASSIVE_SVC_CHECKS"
send_nagios "STOP_ACCEPTING_PASSIVE_HOST_CHECKS"
send_nagios "DISABLE_EVENT_HANDLERS"
send_nagios "DISABLE_NOTIFICATIONS"
send_nagios "DISABLE_FLAP_DETECTION"
send_nagios "DISABLE_PERFORMANCE_DATA"
}
# Start the monitoring engine
start_engine() {
send_nagios "START_ACCEPTING_PASSIVE_HOST_CHECKS"
send_nagios "START_ACCEPTING_PASSIVE_SVC_CHECKS"
send_nagios "START_EXECUTING_HOST_CHECKS"
send_nagios "START_EXECUTING_SVC_CHECKS"
send_nagios "ENABLE_EVENT_HANDLERS"
send_nagios "ENABLE_NOTIFICATIONS"
send_nagios "ENABLE_FLAP_DETECTION"
send_nagios "ENABLE_PERFORMANCE_DATA"
}
while [ -n "$1" ]; do
case "$1" in
start) start_engine; shift 1;;
stop) stop_engine; shift 1;;
*) shift 1;;
esac
done
Loading…
Cancel
Save