mirror of
https://github.com/munin-monitoring/contrib.git
synced 2018-11-08 00:59:34 +01:00
48 lines
1.5 KiB
Bash
Executable File
48 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Script to monitor PowerDNS performance
|
|
#
|
|
# Parameters understood:
|
|
#
|
|
# config (required)
|
|
# autoconf (optional - used by munin-config)
|
|
#%# family=auto
|
|
#%# capabilities=autoconf
|
|
|
|
pdns_control="/usr/bin/pdns_control"
|
|
command="$pdns_control list"
|
|
|
|
if [ "$1" = "autoconf" ]; then
|
|
if [ -e "$pdns_control" ]; then
|
|
echo yes
|
|
exit 0
|
|
else
|
|
echo "no (missing $pdns_control)"
|
|
exit 0
|
|
fi
|
|
fi
|
|
|
|
if [ "$1" = "config" ]; then
|
|
echo 'graph_title Power DNS errors'
|
|
echo 'graph_args -l 0 --base 1000'
|
|
echo 'graph_vlabel numbers of'
|
|
echo 'graph_category dns'
|
|
echo 'graph_info This graph shows Power DNS performance on the machine.'
|
|
echo 'corrupt_packets.label corrupt packets'
|
|
echo 'corrupt_packets.type DERIVE'
|
|
echo 'corrupt_packets.min 0'
|
|
echo 'corrupt_packets.info Number of corrupt packets received'
|
|
echo 'servfail_packets.label servfail packets'
|
|
echo 'servfail_packets.type DERIVE'
|
|
echo 'servfail_packets.min 0'
|
|
echo 'servfail_packets.info Number of times a server-failed packet was sent out'
|
|
echo 'timedout_packets.label timedout packets'
|
|
echo 'timedout_packets.type DERIVE'
|
|
echo 'timedout_packets.min 0'
|
|
echo 'timedout_packets.info Number of packets which weren not answered within timeout set'
|
|
exit 0
|
|
fi
|
|
|
|
|
|
$command | sed 's/=\([0-9]\+\),/.value \1\n/g' | egrep "corrupt|servfail|timedout" | sed 's/-/_/g'
|