#!/usr/bin/perl

($w , $c)=@ARGV;

if ($#ARGV<1) {
        print "Usage:\n";
        print "check_postfix_queue.pl <warning> <critical>\n";
        exit(-1);
}

#Check postfix mail queue
#Comando postqueue precisa estar no Sudoers.

$mailQ = `/usr/bin/sudo /usr/sbin/postqueue -p | tail -1 | cut -d " " -f 5`;

if ($? != "0"){
        "Critical - Nao foi possivel executar o comando postqueue!\n";
        exit (2);
}

if ($mailQ == ""){
        $mailQ = 0;
}

chomp ($mailQ);

if ($mailQ > $c){
	print "CRITICAL: $mailQ E-Mail(s) nao entregues | queue=$mailQ;$w;$c;0;\n";
	exit (2);
}

if ($mailQ > $w){
        print "WARNING: $mailQ E-Mail(s) nao entregues | queue=$mailQ;$w;$c;0;\n";
        exit (1);
}

print "OK: $mailQ E-Mail(s) nao entregues | queue=$mailQ;$w;$c;0;\n";
        exit (0);
