Exim_grep_queue para o nagios

Esta última semana retornei minhas incursões no desenvolvimento Python que só acabaram sendo estacionadas por causa de alguns problemas que ocorreram com minha máquina de trabalho ( sim, aquele famoso Positivo está morrendo ).

Aí, estou tendo que correr atrás antes do que planejei atrás de uma boa máquina para comprar ( e já achei inclusive ) e aí pego meu atual Compaq e ele fica para rodar cliente com ele. 

Resumo, isto gerou trocentos problemas com os projetos e andamento do blog que estavam inclusive até interessantes. 
Mas o coding acabou não parando e na semana passada eu lancei um plugin público para o nagios.

Este plugin é o exim_grep_queue que tem como funcionamento básico procurar por uma string específica dentro da fila do exim.
É super interessante e bem mão na roda mesmo.

A página do plugin está aqui e o git do projeto é este aqui.

O funcionamento é fácil.

Primeiro baixe o plugin lá no github.

Depois :

# mv exim_grep_queue /usr/local/bin
# chmod +x /usr/local/bin/exim_grep_queue

O script tem 3 argumentos : 

-S -> a string que você vai buscar
-w -> o nível de warning ( aviso ) que você quer começar a ser alertado pelo seu nagios
-c -> o nível crítico, ou seja, alerta total no seu nagios

Um exemplo seria, se eu quero monitorar os emails da fila que contém yahoo.com.br : 

/usr/local/bin/exim_grep_queue -w 20 -c 100 -S yahoo.com.br  

DO mesmo modo, se quero monitorar emails de um usuário específico : 

/usr/local/bin/exim_grep_queue -w 20 -c 100 -S usuario@dominio.com 

Portanto, no seu nrpe coloque a seguinte linha : 

command[check_string]=/usr/local/bin/exim_grep_queue -w 5 -c 30 -S string.com.br

No código do script modifique o caminho para o exiqgrep no seu sistema operacional : 

# Change this for your path of Exiqgrep
Exiqgrep=”/usr/sbin/exiqgrep”

No seu /etc/sudoers faça o seguinte : 

%nagios ALL=(ALL) NOPASSWD:/usr/sbin/exiqgrep

Onde %nagios é o grupo em que o seu nrpe está rodando naquele servidor específico. 

E pronto ... tá rodando o script e monitorando o que você precisar de strings na fila do exim :-)