>_Nagios – enviando sms através do Googlecl

Neste tutorial vou abordar a instalação do GoogleCL – Google Command Line, e através dele irei utilizar o API Calendar para enviar as notificações do Nagios via SMS.

Vale lembrar que este método que irei utilizar para enviar as notificações do Nagios via SMS não é um modelo profissional. O Correto é ter um GW de SMS ou contratar um serviço de envio de SMS. O GoogleCL Calendar nada mais é que uma Agenda onde cada evento criado dispara uma Notificação por Email e/ou SMS, uma vez que foi cadastrado o número de celular em uma conta do Google.

Deixando um pouco de lado o bla,bla,bla, vamos partir para instalação do API do GoogleCL.

OBS: Lembrando que a configuração a seguir foi realizada no CentOS 6 com o Nagios já instalado.

Passo 1 – Instalação do GoogleCL

# wget http://dl.fedoraproject.org/pub/epel/6/i386/python-gdata-2.0.11-1.el6.noarch.rpm
# yum install fuse-python
# rpm -Uvh python-gdata-2.0.11-1.el6.noarch.rpm

# wget https://googlecl.googlecode.com/files/googlecl-0.9.13.tar.gz
# tar -xvf googlecl-0.9.13.tar.gz
# cd googlecl-0.9.13
# python setup.py install

Após a instalação, será necessário acessar a conta do Google para aceitar o Token gerado localmente no Servidor.

Primeiro acesso:

# sudo su nagios
/usr/bin/google calendar add "teste" --date=12:25 --reminder 1m

Explicando o comando acima:

Loguei com o usuário Nagios pela Bash em seguida chamei a API Calendar para criar a primeira Notificação dentro da minha agenda, defini a hora com o comando “–date” passando o valor de alguns minutos a mais do que a horário correto e com a tag “–reminder” passei o valor “1m” que deverá enviar a notificação 1 minuto antes do evento.

 

OBS: Ao executar o comando, será necessários entrar com uma conta/senha válida no gmail.com. Após digitar a senha será pedido sua confirmação em aceitar um script de terceiro e por fim o cadastro do Usuário/Servidor (Token). Caso não consiga cadastrar copie o link que o Google irá informar e através de outro navegador aceite a confirmação.

Dica: Acesse o Google Calendar com a conta que irá enviar as notificações e na aba Configurações – Agenda – Lembretes e notificações selecione Notificações por SMS como padrão.

 

Passo 2 – Criando o script sms.sh. Este script fará a integração com o Nagios e através de dele será enviado o evento ao Google Calendar.

# vim /usr/lib/nagios/plugins/sms.sh
!/bin/bash

hora=$(/bin/date +%H:%M --date "5min")
echo $hora
        /usr/bin/google calendar add "$1" --date=$hora --reminder 1m
# chmod +x /usr/lib/nagios/plugins/sms.sh

Passo 3 – Criando o command notify-host-by-sms dentro do arquivo commands.cfg.

# vim /etc/nagios/objects/commands.cfg
define command{
        command_name    notify-host-by-sms
        command_line    /usr/lib/nagios/plugins/sms.sh "Nagios - Host: $HOSTNAME$ State: $HOSTSTATE$"
        }

Passo 4 – Ajustando o template contact dentro do arquivo templates.cfg

# vim /etc/nagios/objects/templates.cfg
define contact{
        name                            generic-contact
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r,f,s
        host_notification_options       d,u,r,f,s
        service_notification_commands   notify-service-by-email
        host_notification_commands      notify-host-by-email,notify-host-by-sms
        register                        0
        }

Pronto configurado.
Desta forma o Nagios enviará as notificações dos Hosts por Email e SMS.

Importante: O Google limita a quantidade de envio de SMS por dia, nos meus testes consegui enviar 15 SMS no mesmo dia.

Glória a Deus e até o próximo tutorial.

>_Nagios – enviando sms através do Googlecl
Tagged on:

4 thoughts on “>_Nagios – enviando sms através do Googlecl

  • 19 de maio de 2013 at 18:47
    Permalink

    OBS: Não esqueça de deixar o número do celular configurado no Google Agenda.

    Reply
  • 29 de dezembro de 2014 at 18:57
    Permalink

    como faço para cadastrar vários celulares? vc tem algum GW de SMS ou serviço de sms para recomendar?

    Abraços.

    Reply
    • 29 de dezembro de 2014 at 23:39
      Permalink

      Você pode contratar um serviço externo, ou até mesmo criar um GW com placas 3G conectadas no teu servidor ou pabx ip. Fora isso não existe outra forma usando os recursos do google.
      Procure por uma empresa chamada Digivoice ele fabricam placas com até 8 chip’s de celulares.
      Abs,
      Evandro Couto.

      Reply
  • 26 de junho de 2015 at 14:13
    Permalink

    Estou usando o serviço “Followzup.com” para monitorar várias páginas do sistema (fale conosco, novos assinantes, reciperação de senha, etc). É só enviar 1 comando e a mensagem de alerta vai direto para o celular sem gastar dinheiro com SMS.

    Reply

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

%d blogueiros gostam disto: