Script Bash para monitorar um ou vários sites e verificar se estão online – Elias Praciano
Categories
Linux Programação Tutoriais

Script Bash para monitorar um ou vários sites e verificar se estão online

Como montar um pequeno script em Bash para monitorar e detectar quando um servidor, um host ou qualquer ou computador da rede está offline.

Este pequeno script em Bash, vai monitorar uma lista de sites, à sua escolha e vai avisar se algum deles não estiver online, em algum momento.
Como ele usa o comando ping, você também pode executá-lo dentro da sua rede local para monitorar diversos nós e ficar sabendo quando um for desligado.
Veja o código abaixo:


#!/bin/bash
# Um script feito para sistemas Linux e UNIX
# que faz monitoramento com o comando PING.

# adicione endereços IP ou hostnames, 
# separados por espaços em branco, para serem
# monitorados pelo script.
HOSTS="127.0.0.1 192.168.1.0 192.168.0.133 google.com"

# sem ping request
CONTADOR=1

# envia relatório de email quando...
ASSUNTO="Ping falhou"
EMAIL="elias@praciano.com"
for meuhost in $HOSTS
do
    contador=$(ping -v -c $CONTADOR $meuhost | grep 'received' | awk -F',' '{print $2}' | awk '{print $1}')
    if [ $contador -eq 0 ]; then
        echo "O Host: $meuhost está fora do ar (o ping falhou) em $(date) - $ASSUNTO - $EMAIL"
        # se você preferir receber um e-mail, descomente a linha abaixo
        echo "Host : $meuhost  ${NAME[$val]} está fora do ar (o ping falhou) em $(date)" | mail -s "$ASSUNTO" $EMAIL
    fi
done

O código pode funcionar melhor dentro de outro script ou sendo executado periodicamente, dentro do crontab do seu sistema.
[blog_subscription_form]

Referências

https://bash.cyberciti.biz/monitoring/monitor-windows-linux-server-with-ping-script/.

By Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como "Rick and Morty" e "BoJack Horseman".
Me siga no Twitter e vamos trocar ideias!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.