shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Script Gnokii


From: Douglas Brito Damalio
Subject: Script Gnokii
Date: Thu, 1 Mar 2007 03:03:28 -0800 (PST)

Olá pessoal!!

Tenho a seguinte situação:

1- Um servidor configurado com nagios funcionando perfeitamente na rede x;

2- Um celular configurado pelo gnokii em uma rede y;

3- 2 scripts shell, configurados no nagios da rede x e funcionando da seguinte 
forma:
   ***- recebe variáveis de estado de host e serviços que o nagios detecta na 
rede x e executa  o  script do gnokii remotamente por ssh:

vejam os script de envio de msgs de hosts:

#!/bin/bash
#
#smsnagios-host.sh
#

#ip da máquina onde esta o gnokii
ip_gnokii="xxx.xxx.xxx.xxx"

#variavel estatica recebe variavel dinamica contento o hostname
servidor=$1

#variavel estatica recebe variavel dinamica contento o estado do host
estado_servidor=$2

#tempo em que o servidor esta DOWN 
tempo=$3

#concatena a mensagem em uma variavel
mesg="$servidor is $estado_servidor $tempo"

#executa-se o script da outra máquina via ssh com as variáveis do nagios da 
rede x
ssh -p <porta> $ip_gnokii "sudo /usr/local/bin/smsgnokii <numero_celular> 
\"$mesg\""

#Testa a saída do script da outra máquina, se for 0 a mensagem foi enviada com 
sucesso e grava a mensagem de sucesso
# em /var/log/nagios/smsnagios.log, no nagios rede x, se for 1 não foi enviada 
com sucesso e grava no mesmo arquivo
if test $? = 0
then
        echo $(date "+Mensagem SMS foi enviada com sucesso as %T em 
%d/%m/%Y%n") >> /var/log/nagios/smsnagios.log
        echo "Problema: $mesg" >> /var/log/nagios/smsnagios.log
        echo "" >> /var/log/nagios/smsnagios.log
else
        echo $(date "+Mensagem SMS não foi enviada com sucesso as %T em 
%d/%m/%Y%n") >> /var/log/nagios/smsnagios.log
        echo "Problema: $mesg" >> /var/log/nagios/smsnagios.log
        echo "" >> /var/log/nagios/smsnagios.log
fi


vejam o script de envio de msgs de services:

#!/bin/bash
#
#smsnagios-service.sh
#

#ip da máquina onde esta o gnokii
ip_gnokii="xxx.xxx.xxx.xxx"

#variavel estatica recebe variavel dinamica contento o host
servidor=$1

#servico especifico que esta com problemas
servico=$2

#variavel estatica recebe o estado do servico
estado_servico=$3

mesg="$servico of $servidor is $estado_servico"

#executa-se o script do gnokii via ssh com as variáveis do nagios da rede x
ssh -p <porta> $ip_gnokii "sudo /usr/local/bin/smsgnokii <numero_celular> 
\"$mesg\""

#Testa a saída do script do gnokii, se for 0 a mensagem foi enviada com sucesso 
e grava a mensagem de sucesso em /var/log/nagios/smsnagios.log, no nagios da 
rede x, se for 1 não foi enviada com sucesso e grava no mesmo arquivo
if test $? = 0
then
        echo $(date "+Mensagem SMS foi enviada com sucesso as %T em 
%d/%m/%Y%n") >> /var/log/nagios/smsnagios.log
        echo "Problema: $mesg" >> /var/log/nagios/smsnagios.log
        echo "" >> /var/log/nagios/smsnagios.log
else
        echo $(date "+Mensagem SMS não foi enviada com sucesso as %T em 
%d/%m/%Y%n") >> /var/log/nagios/smsnagios.log
        echo "Problema: $mesg" >> /var/log/nagios/smsnagios.log
        echo "" >> /var/log/nagios/smsnagios.log
fi


O timeperiods do nagios está configurado para enviar notificações para o 
celular 24 horas aos sábados e domingos, de 18:00 até 8:00 do outro dia de 
segunda à sexta-feira!!!

A minha dúvida é a seguinte:
Existe alguma forma de configurar os feriados pelo script??
Quero dizer, quando for carnaval no ano que vem, e cair na quarta-feira e eu 
estiver de folga, não vou receber enventuais notificações entre 8:00 e 18:00, 
pois o meu script é limitado.

Tive uma idéia de armazenar os feriados todos em um vetor e sair comparando p/ 
enviar a notificação...

Alguém concorda ou discorda??

Ass.: Douglas



__________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]