msoliver
(usa Debian)
Enviado em 10/03/2016 - 03:35h
Drey escreveu:
Olá pessoal gostaria muito que alguem me ajudasse a achar o erro do meu script que teoricamente " realiza um ping em um ip fixo e realiza uma métrica que se a média de 4 pulsos de ping for maior que 1ms ele dispara um e-mail para um e-mail fixo.. mais estou com alguns erros no script alguém poderia me auxiliar ???
ATT
#!/bin/bash
#obtem o ip.
ip="192.168.56.200"
LIMITE="1"
MAIL_ALERTA="admin@fatecseg.edu.br"
echo "calculando o lag para $ip"
#obtem a latencia de 4 saltos (pulsos sla)
LATENCIA='ping $IP -c4 | grep rtt | awk {`print $4`} awk -f "/home" {`print $2}`
#calculo
if [ -z $LATENCIA ];
then LATENCIA="1000"
fi
if [`expr $LATENCIA `<` $LIMITE` -eq 0];
then echo "Latencia Critica:" $LATENCIA" | mail -s "Latencia - Critica" $MAIL_ALERTA
logger -p local0.err "Latencia de conexao com $IP esta critica: $LATENCIA"
echo "Latencia em nivel critico: $LATENCIA"
exit 1
else
echo "Latencia em nivel OK:" $LATENCIA"
Logger -p local0.info "Latencia de conexao com $IP OK: $LATENCIA"
exit 0
fi
-----------------------------------------------------------------------------
Bom dia Drey.
Tinha alguns erros, Esta "Arrumado" . . .
Testei aqui, e funcionou, só não enviei o e-mail :)
Segue o código:
#!/bin/bash
#################################
## marcelo oliver - março/2016 ##
#################################
# "Defina o IP"
IP="192.168.56.200"
MAIL_ALERTA="admin@fatecseg.edu.br"
echo "Calculando o lag para \"$IP\""
LAT_STT=$(ping $IP -c4 | awk '/rtt/{print $4}'|awk -F"/" '{if ($2>1)STT="NOK";else STT="OK";print $2,STT}')
LAT=$(cut -d" " -f1 <<< "$LAT_STT")
STT=$(cut -d" " -f2 <<< "$LAT_STT")
[ -z $LAT ] && STT="NOK"
if [ $STT = "NOK" ];then
echo "Latência Critica: "$LAT"" | mail -s "Latência - Critica" $MAIL_ALERTA
logger -p local0.err "Latência de conexão com $IP esta critica: $LAT"
echo "Latência em nível critico: $LAT"
elif [ $STT = "OK" ];then
echo "Latência em nível OK: \"$LAT\""
Logger -p local0.info "Latência de conexão com $IP OK: $LAT"
fi
É isso . . .
Se resolver, marque como resolvido, por favor.
Gostando da resposta, marque-a como MELHOR, dessa forma, ganho uns pontinhos, o que incentiva a continuar ajudando . . . :)
att.:
marcelo oliver