2013-08-20 21:31:15 +02:00
|
|
|
#!/bin/sh
|
|
|
|
#
|
2013-08-20 22:48:47 +02:00
|
|
|
# Description : Plugin to monitor a server/network availability.
|
|
|
|
# Author : Thomas VIAL
|
|
|
|
# Usage : ln -s /path/to/fping_ /etc/munin/fping_www.google.com
|
|
|
|
# Explaination : Will graph connection to www.google.com
|
|
|
|
# Requirements :
|
2013-08-20 21:31:15 +02:00
|
|
|
# * fping
|
|
|
|
#
|
|
|
|
|
|
|
|
target=`basename $0 | sed 's/^fping_//g'`
|
2013-08-20 22:48:47 +02:00
|
|
|
item=`echo $target | sed -e 's/\.//g'`
|
|
|
|
|
|
|
|
#
|
|
|
|
# Config
|
|
|
|
#
|
2013-08-20 21:31:15 +02:00
|
|
|
|
|
|
|
if [ "$1" = "config" ]; then
|
|
|
|
echo "graph_title ${target} availability"
|
2013-08-20 22:48:47 +02:00
|
|
|
echo "graph_args -l 0 -u 100"
|
2013-08-20 21:31:15 +02:00
|
|
|
echo "graph_vlabel Availability"
|
|
|
|
echo "graph_category network"
|
2013-08-20 22:48:47 +02:00
|
|
|
echo "graph_info Displays Network Availability"
|
2013-08-20 21:31:15 +02:00
|
|
|
# Success
|
2013-08-20 22:48:47 +02:00
|
|
|
echo "fping_${item}_success.label Reachable"
|
|
|
|
#echo "fping_${item}_success.type GAUGE"
|
|
|
|
echo "fping_${item}_success.colour 00CC00CC"
|
2013-08-20 21:31:15 +02:00
|
|
|
# Failure
|
2013-08-20 22:48:47 +02:00
|
|
|
echo "fping_${item}_failure.label Unreachable"
|
|
|
|
echo "fping_${item}_failure.type AREA"
|
|
|
|
echo "fping_${item}_failure.colour ff0000"
|
2013-08-20 21:31:15 +02:00
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
2013-08-20 22:48:47 +02:00
|
|
|
#
|
|
|
|
# Let's go!
|
|
|
|
#
|
2013-08-20 21:31:15 +02:00
|
|
|
|
|
|
|
fping -q $target
|
|
|
|
status=$?
|
|
|
|
|
|
|
|
if [ $status -eq 0 ]; then
|
2013-08-20 22:48:47 +02:00
|
|
|
# Success
|
|
|
|
echo "fping_${item}_success.value 100"
|
|
|
|
echo "fping_${item}_failure.value 0"
|
2013-08-20 21:31:15 +02:00
|
|
|
else
|
2013-08-20 22:48:47 +02:00
|
|
|
# Failure
|
|
|
|
echo "fping_${item}_success.value 0"
|
|
|
|
echo "fping_${item}_failure.value 100"
|
2013-08-20 21:31:15 +02:00
|
|
|
fi
|