munin-plugins/extern/pihole/pihole_queries

45 lines
1.1 KiB
Bash

#!/bin/sh
# Sample setup for '/etc/munin/plugin-conf.d/munin-node':
#
# [pihole_*]
# user root
# env.host 127.0.0.1
# env.port 80
# env.api /admin/api.php
envhost=${host:-127.0.0.1}
envport=${port:-80}
envapi=${api:-/admin/api.php}
apicall=$(curl -s "$envhost:$envport$envapi" 2>/dev/null)
stats=$(echo $apicall | sed 's/[{}"]//g' | tr "," "\n")
case $1 in
config)
echo "graph_title Pihole Queries"
echo "graph_vlabel queries rate"
echo "graph_category pihole"
echo "graph_info This graph shows the Pihole queries statistics."
for stat in $stats
do
uid=$(echo $stat | sed 's/:.*//')
if [ $uid = "dns_queries_today" ] || [ $uid = "ads_blocked_today" ]; then
echo "$uid.label $(echo $uid | sed 's/_today//')"
echo "$uid.type DERIVE"
echo "$uid.min 0"
fi
done
exit 0;;
esac
for stat in $stats
do
uid=$(echo $stat | sed 's/:.*//')
if [ $uid = "dns_queries_today" ] || [ $uid = "ads_blocked_today" ]; then
value=$(echo $stat | sed 's/.*://')
echo "$uid.value $value"
fi
done