Pular para o conteúdo

monitorando um servidor

Responder tópico
  • Denunciar
  • Indicar
01 02

13. Re: monitorando um servidor

Enviado em 31/03/2012 - 23:12h

Napst escreveu:

Então alexandre, eu irei utilizar um arquivo texto (contendo só ip dos servidores) e chama-lo no script e assim gerar tb um log no seu resultado..outra coisa o comando sleep ja nao faz a funçao dos intervalos de tempo?e só mais uma pergunta rsrs..o que significa $? .Obrigado mais uma vez, valeu!


Já o comando sleep faz o que se propõe, dormir, parar, esperar. Ele é diferente de um timer que poderia ter uma vida útil independente. O sleep só aguarda um tempo parado dormindo e depois faz o fluxo do programa/script seguir em frente.

O $? até onde eu sei é para controlar erros em seu script. Sempre que desejar pode fazer um teste no $? e seu retorno deve ser 0 (zero). Quando ele não retorna 0(zero) é porque a linha anterior contém um erro.


Se tem outras atribuições não sei ;)

Responder tópico

14. Re: monitorando um servidor

Enviado em 02/04/2012 - 11:39h

Justamente, o $? é a pergunta feita ao último comando. Se retornar zero a execução foi concluída com sucesso.
Se vc deseja deseja incluir um arquivo externo para os servidores, vc pode faze-lo da seguinte forma (imagine que seu arquivo chama-se servers.txt):

[code]
#!/bin/bash

LOG_PING="/tmp/log_ping.txt"
for i in `cat servers.txt`
do

ping -c3 "$i"
if [ $? -eq 0 ]; then

echo "Servidor $ip_servidor OK" >> LOG_PING

else

echo "Servidor $ip_servidor NAO RESPONDE" >> LOG_PING

fi

done
[code]

Neste caso você não precisa inserir um sleep, a não ser que vc queira que a cada ping ele espere um tempo, mas não vejo necessidade para isso.

Você pode inserir a saída em um arquivo de log (/tmp/log_ping.txt). Se quiser deixar o arquivo de log mais detalhado poderia inserir data e horário tb.

15. Re: monitorando um servidor

Enviado em 02/04/2012 - 11:45h

Justamente, o $? é a pergunta feita ao último comando. Se retornar zero a execução foi concluída com sucesso.
Se vc deseja incluir um arquivo externo para os servidores, vc pode faze-lo da seguinte forma (imagine que seu arquivo chama-se servers.txt):


#!/bin/bash

LOG_PING="/tmp/log_ping.txt"
for i in `cat servers.txt`
do

ping -c3 "$i"
if [ $? -eq 0 ]; then

echo "Servidor $ip_servidor OK" >> LOG_PING

else

echo "Servidor $ip_servidor NAO RESPONDE" >> LOG_PING

fi

done



Neste caso você não precisa inserir um sleep, a não ser que vc queira que a cada ping ele espere um tempo, mas não vejo necessidade para isso.

Você pode inserir a saída em um arquivo de log (/tmp/log_ping.txt). Se quiser deixar o arquivo de log mais detalhado poderia inserir data e horário tb.


16. Re: monitorando um servidor

Enviado em 02/04/2012 - 16:24h

Obrigado Alexandre e e a todos que de alguma forma me ajudaram, vcs são 10!

17. Re: monitorando um servidor

Enviado em 02/04/2012 - 16:28h

Alexandre no scprit acima quem seria $ip_servidor no caso ? Obrigado mais uma vez

18. Re: monitorando um servidor

Enviado em 02/04/2012 - 16:38h

napst escreveu:

Alexandre no scprit acima quem seria $ip_servidor no caso ? Obrigado mais uma vez


Opa napst, desculpe a falha! Troque o $ip_servidor por $i

Isso é a variável atribuída à listagem de servidores do seu arquivo servers.txt


01 02

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder