HEX
Server: LiteSpeed
System: Linux s12787.usc1.stableserver.net 5.14.0-570.32.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Aug 6 11:30:41 EDT 2025 x86_64
User: househiv (1652)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //usr/lib64/nagios/plugins/check_eximqueue.sh
#!/bin/bash

usage() {
    echo " check_eximqueue - Icinga Exim queue check"
    echo ""
    echo " Usage: check_eximqueue -w <warning queue size> -c <critical queue size> [ -h ]"
    echo ""
    echo "       -w  Queue size at which a warning is triggered"
    echo "       -c  Queue size at which a critical is triggered"
    echo "       -h  Show this page"
    echo ""
}

cmdopts() {
    if ( `test 0 -lt $#` )
    then
        while getopts w:c:h myarg "$@"
        do
            case $myarg in
                h|\?)
                    usage
                    exit;;
                w)
                    WARNING=$OPTARG;;
                c)
                    CRITICAL=$OPTARG;;
                *)  # Default
                    usage
                    exit;;
            esac
        done
    else
        usage
        exit
    fi
}

cmdopts $@

COUNT=$(sudo /sbin/exim -bpc)

if [ "$COUNT" -ge "$CRITICAL" ]
then
    echo "Critical: Exim queue is at $COUNT";
    exit 2;
elif [ "$COUNT" -ge "$WARNING" ]
then
    echo "Warning: Exim queue is at $COUNT";
    exit 1;
else
    echo "OK: Exim queue is at $COUNT";
    exit 0;
fi