#!/bin/sh

APP_TO_MONITOR=spamassassin
LOGFILE_TO_WATCH=/var/log/maillog
NUMBER_OF_LINES=100
NUMBER_OF_ERRORS=10
tail=/usr/bin/tail
ps=/bin/ps
PATH=/sbin:/bin:/usr/bin:/usr/sbin
date=`date +%Y%m%d::%R`
prog=$APP_TO_MONITOR

# Must be root
if test "`/usr/bin/id -u`" != 0 ; then
    echo "$0: You must be root to run this script" >& 2
    exit 1
fi

stop(){
    echo -n "Stopping $prog: "
    /etc/init.d/spamassmilter stop
    /etc/init.d/spamassassin stop
}

start(){
    echo -n "Starting $prog: "
    /etc/init.d/spamassassin start
    /etc/init.d/spamassmilter start
}

number_var=`tail -$NUMBER_OF_LINES $LOGFILE_TO_WATCH | grep -ic "to error state"`

if [[ $number_var -gt $NUMBER_OF_ERRORS ]]; then
	echo "Too many errors at $date in the logfile. Restarting Daemon"  >> /var/log/spamd_monitor_log
	stop
	start
else 
	echo "All looks good at $date" >> /var/log/spamd_monitor_log
fi


