Este script é responsável por coletar métricas de rede em unidades remotas, simulando tráfego e medindo desempenho. Ele envia os dados coletados para um servidor central, onde são processados e armazenados.
O script realiza as seguintes tarefas:
- Gera tráfego de rede simulado para testar a capacidade da rede.
- Coleta métricas como largura de banda, latência e perda de pacotes.
- Envia os dados para um servidor central via API.
Antes de executar o script, é necessário definir as variáveis de configuração. Abaixo estão as variáveis que devem ser ajustadas:
Variável | Descrição | Exemplo |
---|---|---|
SERVER_URL |
URL do servidor central que recebe as métricas. | http://192.168.1.100/api |
UNIT_ID |
Identificador único da unidade (ex.: nome da unidade ou ID). | SP-001 |
IPERF_SERVER_IP |
IP do servidor iperf3 que recebe o tráfego simulado. | 192.168.1.100 |
PING_SERVER_IP |
IP do servidor usado para medir latência e perda de pacotes. | 192.168.1.100 |
TEST_DURATION |
Duração do teste de tráfego (em segundos). | 60 |
BANDWIDTH |
Largura de banda do tráfego simulado (ex.: 10M para 10 Mbps). | 10M |
- Defina as variáveis no script conforme as instruções acima.
- Torne o script executável:
chmod +x network_monitor.sh
- Execute o script:
./network_monitor.sh
Para executar o script automaticamente a cada 5 minutos, use o cron:
- Abra o crontab para edição:
crontab -e
- Adicione a linha abaixo:
Substitua
*/5 * * * * /caminho/para/network_monitor.sh
/caminho/para/network_monitor.sh
pelo caminho completo do script.
Certifique-se de que as seguintes ferramentas estão instaladas no sistema:
- iperf3: Para gerar tráfego de rede.
- curl: Para enviar dados ao servidor.
- ping: Para medir latência e perda de pacotes.
Se encontrar problemas ou tiver sugestões de melhorias, sinta-se à vontade para abrir uma issue ou enviar um pull request.
Este projeto está licenciado sob a MIT License.
- Salve o conteúdo acima em um arquivo chamado
README.md
. - Coloque o arquivo no mesmo diretório do script.
- Atualize as informações conforme necessário (ex.: URL do servidor, exemplos de variáveis).