Este projeto consiste em um script de automação desenvolvido em Python para monitorar a saúde de servidores cujos dados estão armazenados em um banco de dados PostgreSQL. O sistema identifica falhas de conectividade ou uso excessivo de recursos e dispara notificações instantâneas para o celular do administrador via Pushover API.
- Linguagem: Python 3.x
- Banco de Dados: PostgreSQL (Persistência do inventário de servidores)
- Comunicação: API do Pushover (Alertas Push para dispositivos móveis)
- Bibliotecas Python:
psycopg2(Conexão DB),requests(Chamadas de API),python-dotenv(Segurança) - Ambiente: Linux Ubuntu VM
- Monitoramento de Status: Verifica se os servidores estão
onlineouoffline. - Análise de Performance: Monitora se o uso de CPU ou Memória RAM ultrapassou o limite crítico de 80%.
- Alertas Inteligentes: Filtra apenas os servidores com problemas para evitar "flood" de notificações desnecessárias.
- Segurança da Informação: Implementação de Variáveis de Ambiente (
.env) para proteger credenciais de banco de dados e chaves de API, garantindo que dados sensíveis não sejam expostos no repositório.
monitor.py: Script principal contendo a lógica de consulta SQL e integração com a API..env: Arquivo (protegido pelo .gitignore) que armazena as chaves privadas..gitignore: Configuração para impedir o upload de arquivos sensíveis e ambientes virtuais.requirements.txt: Lista de dependências para replicação do ambiente.
- Clone o repositório.
- Crie um ambiente virtual:
python3 -m venv venv. - Instale as dependências:
pip install -r requirements.txt. - Configure suas credenciais no arquivo
.env. - Execute o monitoramento:
python3 monitor.py.
Desenvolvido por Daniel Mourão Lopes Focado em Automação de Infraestrutura e DevOps