Add NRPE Exim Mailqueue Check to cPanel Server

This blog assumes that NRPE and nagios plugins are already installed on the remote server.

Remote OS: Centos 6.7
Nagios Server OS: Centos 5.7
WHM: 11.50.0
NRPE: 2.14


Remote server

Download the check_eximailqueue plugin (version 1.3 as of writing) from . Upload the plugin to the the Nagios plugin directory (/usr/lib64/nagios/plugins/) on the remote server

[RemoteServer]# vi /usr/lib64/nagios/plugins/check_eximailqueue

Uncomment the following line


and add

EXIM=$(which exim)


Edit the nrpe.cfg

[RemoteServer]# vi /etc/nagios/nrpe.cfg

command[check_exim_mailq]=/usr/lib64/nagios/plugins/check_eximailqueue -w 100 -c 200


Add sudo privileges to nagios user

[RemoteServer]# visudo

nagios  ALL=NOPASSWD:/usr/lib64/nagios/plugins/check_eximailqueue, /usr/sbin/exim


Nagios Server

Edit Nagios config and add following:

define service{
        use generic-service
        service_description MailQ-Exim
        check_command check_nrpe!check_exim_mailq



However, this still did not work. The following error appeared:

[NagiosServer]# ./check_nrpe  -H -c check_exim_mailq

Mailqueue WARNING – query returned no output!


It seems a lot of users out there struggling with this error. The fix is to add the following line to the /etc/sudoers file

Defaults:nagios !requiretty


Running this from Nagios server again I get the following output:

[NagiosServer]# ./check_nrpe  -H -c check_exim_mailq

Mailqueue OK – 0 messages on queue

Success !