Recebendo notificações do Nagios via Jabber
Há algum tempo comecei a utilizar o Nagios para monitorar a atividade de alguns hosts e servidores da rede, trabalho em uma indústria que funciona 24 horas por dia e o pessoal de TI precisa saber quando algo ocorre com um pouco de antecipação para resolver o problema o mais rápido possível.
Recebendo notificações do Nagios via Jabber
Receber as notificações por e-mail não era o suficiente, então fui pesquisar que outras possibilidades eu tinha, quando descobri que poderia enviar as mensagens por Jabber, uma vez que tenho na empresa o Openfire instalado, isso caiu como uma luva. Você também pode fazer o mesmo usando Google Talk ou qualquer outro sistema XMPP/Jabber.
Na busca pela forma de fazer isso tentei escrever meu próprio artigo, mas não tinha intimidade com as funções certas, então pesquisando esbarrei em um artigo escrito por David Cox que tinha um script para fazer este trabalho, mas seu script não funcionou como o esperado. Mais um pouco de pesquisa e encontrei este artigo de Alias Anoop, que é a base para este artigo e pode ser encontrado em:
howto setup Instant messenger (IM) notifications in nagios
Vamos ao que interessa, o Nagios é altamente configurável e uma vez que se entenda sua forma elegante de trabalhar, estender suas funcionalidades para enviar mensagens instantâneas é brincadeira de criança.
Basicamente o Nagios chama um script escrito em Perl que se conecta ao servidor Jabber e envia a notificação para você.
# cd /usr/local/nagios/libexec
# wget http://gnusys.net/downloads/notify_via_jabber.pl
# chown nagios.nagios notify_via_jabber.pl
# chmod 755 notify_via_jabber.pl
É necessário instalar um biblioteca do Perl para que ele possa interagir com o jabber:
# aptitude install libnet-jabber-perl
Pronto, já temos o script, agora precisamos fazer algumas alterações nele para que possa se conectar em nosso servidor Jabber.
Aqui vemos o que deve ser alterado, procure esta seção e coloque o nome do servidor, a porta de conexão, o usuário que enviará as mensagens e a senha.
Na busca pela forma de fazer isso tentei escrever meu próprio artigo, mas não tinha intimidade com as funções certas, então pesquisando esbarrei em um artigo escrito por David Cox que tinha um script para fazer este trabalho, mas seu script não funcionou como o esperado. Mais um pouco de pesquisa e encontrei este artigo de Alias Anoop, que é a base para este artigo e pode ser encontrado em:
howto setup Instant messenger (IM) notifications in nagios
Vamos ao que interessa, o Nagios é altamente configurável e uma vez que se entenda sua forma elegante de trabalhar, estender suas funcionalidades para enviar mensagens instantâneas é brincadeira de criança.
Basicamente o Nagios chama um script escrito em Perl que se conecta ao servidor Jabber e envia a notificação para você.
Fazendo download e configurando o script
Faça download do script, devemos também torná-lo executável e fazer com que o Nagios seja seu proprietário com os comandos abaixo:# cd /usr/local/nagios/libexec
# wget http://gnusys.net/downloads/notify_via_jabber.pl
# chown nagios.nagios notify_via_jabber.pl
# chmod 755 notify_via_jabber.pl
É necessário instalar um biblioteca do Perl para que ele possa interagir com o jabber:
# aptitude install libnet-jabber-perl
Pronto, já temos o script, agora precisamos fazer algumas alterações nele para que possa se conectar em nosso servidor Jabber.
Aqui vemos o que deve ser alterado, procure esta seção e coloque o nome do servidor, a porta de conexão, o usuário que enviará as mensagens e a senha.
use constant SERVER => 'servidor.net';
use constant PORT => 5222;
use constant USER => 'usuario@servidor.net';
use constant PASSWORD => 'd3fault';
use constant PORT => 5222;
use constant USER => 'usuario@servidor.net';
use constant PASSWORD => 'd3fault';