2014-11-19 05:30:31 +01:00
|
|
|
#!/bin/bash
|
|
|
|
#
|
|
|
|
# Made by Boudewijn Ector, for Boudewijn Ector IT.
|
|
|
|
# Comments can be sent to (boudewijn<AT>boudewijnector'dot'NL)
|
|
|
|
# Loosely based on http://munin.projects.linpro.no/attachment/wiki/PluginCat/postfix_messages_hourly.txt
|
|
|
|
# Script to show postfix stuff
|
|
|
|
#
|
|
|
|
# Modified by Paul Saunders <darac+munin@darac.org.uk>, 10 Dec 2010
|
|
|
|
#
|
|
|
|
# Parameters understood:
|
|
|
|
#
|
|
|
|
# config (required)
|
|
|
|
# autoconf (optional - used by munin-config)
|
|
|
|
#
|
|
|
|
#
|
|
|
|
# Magic markers (optional - used by munin-config and installation
|
|
|
|
# scripts):
|
|
|
|
#
|
|
|
|
#%# family=auto
|
|
|
|
#%# capabilities=autoconf
|
|
|
|
|
|
|
|
|
|
|
|
LOGFILE=${logfile:-/var/log/maillog} # Allow user to specify logfile through env.logfile
|
|
|
|
DATE=`date '+%b %e %H'`
|
|
|
|
MAXLABEL=20
|
|
|
|
|
|
|
|
if [ "$1" = "autoconf" ]; then
|
|
|
|
if [[ -r $LOGFILE ]]; then
|
|
|
|
echo yes
|
|
|
|
else
|
|
|
|
echo no
|
|
|
|
fi
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$1" = "config" ]; then
|
|
|
|
|
|
|
|
echo 'graph_title Postfix Mail Counter'
|
|
|
|
echo 'graph_args --base 1000 -l 0'
|
|
|
|
echo 'graph_vlabel Hourly Messages'
|
2017-02-22 18:43:01 +01:00
|
|
|
echo 'graph_category mail'
|
|
|
|
echo 'received.label Delivered'
|
2014-11-19 05:30:31 +01:00
|
|
|
echo 'sent.label Outgoing'
|
|
|
|
echo 'rejecthelo.label Invalid HELO'
|
|
|
|
echo 'rejectsenderdomain.label need FQDN'
|
|
|
|
echo 'denyrelay.label Relay Denied'
|
|
|
|
echo 'spamhaus.label Blocked using Spamhaus.org'
|
|
|
|
echo 'spamcop.label Blocked using Spamcop'
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
2017-02-22 18:43:01 +01:00
|
|
|
echo -en "received.value "
|
|
|
|
echo $(grep "status=sent (delivered" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
echo -n
|
|
|
|
echo -en "sent.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "status=sent (250" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
echo -en "rejecthelo.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "Helo command rejected: need fully-qualified hostname" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
echo -en "rejectsenderdomain.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "Sender address rejected: Domain not found" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
|
|
|
|
|
|
|
|
echo -en "denyrelay.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "Relay access denied" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
echo -en "spamhaus.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "blocked using sbl-xbl.spamhaus.org" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
echo -en "spamcop.value "
|
2017-02-22 18:43:01 +01:00
|
|
|
echo $(grep "blocked using bl.spamcop.net" $LOGFILE | grep "$DATE" | wc -l)
|
2014-11-19 05:30:31 +01:00
|
|
|
|