#!/bin/sh # # pdns_recursor munin plugin. # Written by Sean Reifschneider 2009-12-03 # Placed in the public domain # # Requires running as root: # # echo '[pdns_rec_*]' >/etc/munin/plugin-conf.d/pdns_rec # echo 'user root' >>/etc/munin/plugin-conf.d/pdns_rec rec_control="/usr/bin/rec_control" if [ "$1" = "autoconf" ]; then if [ -e "$rec_control" ]; then echo yes exit 0 else echo "no (missing $rec_control)" exit 0 fi fi RESENDS="$($rec_control get cache-resends)" ISRESENDS="" [ "$RESENDS" != "UNKNOWN" ] && ISRESENDS="resends" if [ "$1" = "config" ]; then echo 'graph_title PDNS Cache' echo "graph_order hits misses $ISRESENDS" echo 'graph_vlabel entries' echo 'graph_info Hit/miss rate' echo 'graph_category dns' echo 'hits.label hits' echo 'hits.min 0' echo 'hits.max 100000' echo 'hits.type COUNTER' echo 'hits.info Cache hits' echo 'misses.label misses' echo 'misses.min 0' echo 'misses.max 100000' echo 'misses.type COUNTER' echo 'misses.info Cache misses' if [ "$RESENDS" != "UNKNOWN" ]; then echo 'resends.label resends' echo 'resends.min 0' echo 'resends.max 100000' echo 'resends.type COUNTER' echo 'resends.info Cache resends' fi exit 0 fi echo hits.value "$($rec_control get cache-hits)" echo misses.value "$($rec_control get cache-misses)" [ "$RESENDS" != "UNKNOWN" ] && echo resends.value "$($rec_control get cache-resends)" exit 0