#!/bin/bash # # Plugin to monitor Exim's mail queue # # Usage: Link into /etc/munin/plugins/ # # Requirements: # # Needs to be run as user mail # # Parameters: # # config (required) # # Configurable variables: # # exim - exim binary location # queuewarn - warning limit # queuecrit - critical limit # # $Log$ # Revision 1.1 2004/12/09 20:03:26 jimmyo # Added two new plugins contributed by Jacques Caruso, generic/exim_mailqueue_alt and generic/mailscanner. # # # Magic markers: #%# family=contrib #%# capabilities= PATH='/bin:/sbin:/usr/bin:/usr/sbin' EXIM=`which exim 2>/dev/null || which exim4 2>/dev/null` QUEUEWARN=100 QUEUECRIT=200 [ "$exim" ] && EXIM=$exim [ "$queuewarn" ] && QUEUEWARN=$queuewarn [ "$queuecrit" ] && QUEUECRIT=$queuecrit if [ "$1" == "config" ]; then echo 'graph_title Exim mailqueue' echo 'graph_args --base 1000 -l 0' echo 'graph_vlabel mails in queue' echo 'graph_category exim' echo 'active.label active' echo 'active.draw LINE2' echo 'bounced.label bounced' echo 'bounced.draw LINE2' echo 'frozen.label frozen' echo 'frozen.draw LINE2' echo 'total.label total' echo 'total.draw LINE2' echo "total.warning $QUEUEWARN" echo "total.critical $QUEUECRIT" exit 0 fi ACTIVE=`$EXIM -bpr | grep -Ev '(^\ \ |^$|<>|frozen)' | wc -l` BOUNCED=`$EXIM -bpr | awk '{print $4}' | grep '<>' | wc -l` FROZEN=`$EXIM -bpr | awk '{print $6}' | grep frozen | wc -l` TOTAL=`$EXIM -bpc` echo "active.value $ACTIVE" echo "bounced.value $BOUNCED" echo "frozen.value $FROZEN" echo "total.value $TOTAL"