Sample file for Munin, using new radmin tool.
authorAlan T. DeKok <aland@freeradius.org>
Wed, 17 Sep 2008 15:52:24 +0000 (17:52 +0200)
committerAlan T. DeKok <aland@freeradius.org>
Wed, 17 Sep 2008 15:52:24 +0000 (17:52 +0200)
Ain't this easy, folks?

scripts/freeradius.auth.munin [new file with mode: 0644]

diff --git a/scripts/freeradius.auth.munin b/scripts/freeradius.auth.munin
new file mode 100644 (file)
index 0000000..15db28b
--- /dev/null
@@ -0,0 +1,88 @@
+#!/bin/sh
+#
+# Plugin to count the daily amount of freeradius authentication packets.
+#
+# Written by Alan DeKok <aland@freeradius.org>
+#
+# Magic markers - optional - used by installation scripts and
+# munin-config:
+#
+#%# family=manual
+#%# capabilities=autoconf
+
+RADMIN=radmin
+SOCKETFILE=/var/run/radiusd/radiusd.sock
+
+if [ "$1" = "autoconf" ]; then
+    #
+    #  FIXME: Check if FreeRADIUS is running.
+    #
+    echo yes
+    exit 0
+fi
+
+if [ "$1" = "config" ]; then
+    echo 'graph_title FreeRADIUS Authentication Requests'
+    echo 'graph_args --base 1000 -l 0 '
+    echo 'graph_vlabel requests / ${graph_period}'
+    echo 'graph_category Other'
+
+    echo 'request.label total requests'
+    echo 'request.info total incoming request packets'
+    echo 'request.type DERIVE'
+    echo 'request.min 0'
+
+    echo 'responses.label total responses'
+    echo 'responses.info total outgoing response packets'
+    echo 'responses.type DERIVE'
+    echo 'responses.min 0'
+
+    echo 'accepts.label total Access-Accepts'
+    echo 'accepts.info total sent Access-Accept packets'
+    echo 'accepts.type DERIVE'
+    echo 'accepts.min 0'
+
+    echo 'rejects.label total Access-Rejects'
+    echo 'rejects.info total sent Access-Reject packets'
+    echo 'rejects.type DERIVE'
+    echo 'rejects.min 0'
+
+    echo 'challenges.label total Access-Challenges'
+    echo 'challenges.info total sent Access-Challenge packets'
+    echo 'challenges.type DERIVE'
+    echo 'challenges.min 0'
+
+    echo 'dup.label total duplicate requests'
+    echo 'dup.info total duplicate request packets'
+    echo 'dup.type DERIVE'
+    echo 'dup.min 0'
+
+    echo 'invalid.label total invalid requests'
+    echo 'invalid.info total invalid request packets'
+    echo 'invalid.type DERIVE'
+    echo 'invalid.min 0'
+
+    echo 'malformed.label total malformed requests'
+    echo 'malformed.info total malformed request packets'
+    echo 'malformed.type DERIVE'
+    echo 'malformed.min 0'
+
+    echo 'bad_signature.label total requests with bad signature'
+    echo 'bad_signature.info total request packets with a bad signature'
+    echo 'bad_signature.type DERIVE'
+    echo 'bad_signature.min 0'
+
+    echo 'dropped.label total dropped requests'
+    echo 'dropped.info total request packets dropped for other reasons'
+    echo 'dropped.type DERIVE'
+    echo 'dropped.min 0'
+
+    echo 'unknown_types.label total requests of unknown type'
+    echo 'unknown_types.info total request packets of unknown type'
+    echo 'unknown_types.type DERIVE'
+    echo 'unknown_types.min 0'
+
+    exit 0
+fi
+
+$RADMIN -f $SOCKETFILE -e "stats client auth" | awk '{print $1".value " $2}'