#!/bin/sh
#
# Plugin to monitor the number of IPs being slowed down by Squid delay pools
+# This monitors the number of IPs being delayed in the last 128 pools, which
+# are the normal requests.
#
-# Parameters:
+# Parameters:
#
# config (required)
# autoconf (optional - used by munin-config)
if [ "$1" = "config" ]; then
- echo 'graph_title IPs being delayed'
+ echo 'graph_title IPs being delayed with referer'
echo 'graph_args --base 1000 -l 0'
echo 'graph_vlabel IPs'
echo 'graph_category squid'
exit 0
fi
-req0=`squidclient -h 127.0.0.1 mgr:delay|fgrep Current|egrep --count '[0-9]{1,3}:-?[0-9]{1,3} '`
+req0=`squidclient -h 127.0.0.1 mgr:delay|awk '\$1 == "Pool:" && \$2 < 128 { pr = 0; } \$1 == "Pool:" && \$2 >= 128 { pr = 1; } { if (pr) { print \$0; } }'|fgrep Current|egrep --count '[0-9]{1,3}:-?[0-9]{1,3} '`
echo "squid_delay1.value " `expr 0 + $req0`
-
--- /dev/null
+#!/bin/sh
+#
+# Plugin to monitor the number of IPs being slowed down by Squid delay pools
+# This monitors the number of IPs being delayed in the first 128 pools, which
+# are the ones which have no referer.
+#
+# Parameters:
+#
+# config (required)
+# autoconf (optional - used by munin-config)
+#
+
+if [ "$1" = "config" ]; then
+
+ echo 'graph_title No-referer IPs being delayed'
+ echo 'graph_args --base 1000 -l 0'
+ echo 'graph_vlabel IPs'
+ echo 'graph_category squid'
+ echo 'squid_delay2.label IPs'
+ echo 'squid_delay2.min 0'
+ echo 'squid_delay2.draw AREA'
+
+ exit 0
+fi
+
+req0=`squidclient -h 127.0.0.1 mgr:delay|awk '\$1 == "Pool:" && \$2 < 128 { pr = 1; } \$1 == "Pool:" && \$2 >= 128 { pr = 0; } { if (pr) { print \$0; } }'|fgrep Current|egrep --count '[0-9]{1,3}:-?[0-9]{1,3} '`
+
+echo "squid_delay2.value " `expr 0 + $req0`
munin_plugin "squid_cache"
munin_plugin "squid_delay_pools"
+munin_plugin "squid_delay_pools_noreferer"
munin_plugin "squid_times"
munin_plugin "squid_icp"
munin_plugin "squid_objectsize"