--- /dev/null
+#!/bin/sh
+#
+# Plugin to monitor the state / freshness of the tiles returned by mod_tile
+#
+# Parameters:
+#
+# config (required)
+# autoconf (optional - used by munin-config)
+#
+
+if [ "$1" = "config" ]; then
+
+ echo 'graph_title freshness of served tiles'
+ echo 'graph_args --base 1000 -l 0'
+ echo 'graph_vlabel tiles per ${graph_period}'
+ echo 'graph_category mod_tile'
+ echo 'fresh.label Fresh from disk'
+ echo 'fresh.draw AREA'
+ echo 'fresh.type DERIVE'
+ echo 'fresh.min 0'
+ echo 'freshrender.label Freshly rendered'
+ echo 'freshrender.draw STACK'
+ echo 'freshrender.type DERIVE'
+ echo 'freshrender.min 0'
+ echo 'old.label Old from disk'
+ echo 'old.draw STACK'
+ echo 'old.type DERIVE'
+ echo 'old.min 0'
+ echo 'oldrender.label Old tile, attempted render'
+ echo 'oldrender.draw STACK'
+ echo 'oldrender.type DERIVE'
+ echo 'oldrender.min 0'
+
+ exit 0
+fi
+
+data=`wget -q http://localhost/mod_tile -O -`
+
+fresh=`expr match "$data" '.*NoFreshCache: \([0-9]*\)'`
+freshRender=`expr match "$data" '.*NoFreshRender: \([0-9]*\)'`
+old=`expr match "$data" '.*NoOldCache: \([0-9]*\)'`
+oldRender=`expr match "$data" '.*NoOldRender: \([0-9]*\)'`
+
+echo "fresh.value " $fresh
+echo "freshrender.value " $freshRender
+echo "old.value " $old
+echo "oldrender.value " $oldRender