Sistema completo de monitoramento de serviços, com:
- 🔍 Checagem de APIs / HTTP
- 📶 Ping com histórico de latência (JSON)
- 🔌 Verificação de múltiplas portas
- 🧠 Monitores extra de CPU e RAM
- 📊 Dashboard Web com gráfico dinâmico (Chart.js)
- 🧾 Logs centralizados em
logs/monitor.log - 📄 Workflow de CI/CD para gerar PDF do README
Visualização profissional online:
✔ Monitoramento em tempo real
✔ Gráfico de latência (Google DNS / Cloudflare)
✔ Status vivo das requisições
✔ Interface moderna e elegante
🚀 Modernização do Projeto — ESModules + Node.js 20
Este projeto foi atualizado para utilizar ESModules (import/export), garantindo:
✔ Compatibilidade total com Node.js 20+
✔ Padrão moderno utilizado nas melhores empresas
✔ Imports mais limpos e modulares
✔ Execução otimizada no GitHub Actions e Render
✔ Código mais seguro e escalável
Principais melhorias aplicadas:
🔄 Substituição completa de require() → import
🔄 Remoção de module.exports → export default
🔧 Correção de paths absolutos com fileURLToPath()
📁 Organização dos arquivos em módulos independentes
🧪 Preparação para testes automáticos
### 🔁 1. Monitor CI/CD (`monitor.yml`) Executa automaticamente o monitor Node.js no GitHub Actions.
✔ Valida API
✔ Checa portas
✔ Executa pings
✔ Testa conectividade
✔ Garante saúde do projeto
Gera um PDF profissional do README a cada push na main.
✔ Sempre atualizado
✔ Disponível em Artifacts
✔ Profissional para entrevistas
Executa monitoramentos agendados sem intervenção humana.
✔ Diário
✔ Atualiza estado do projeto
✔ Simula monitoramento real
monitoramento-node-Raquel/
│
├── logs/
│ ├── monitor.log
│ └── latency.json
│
├── src/
│ ├── checks/
│ │ ├── apiCheck.js
│ │ ├── pingCheck.js
│ │ └── portCheck.js
│ ├── config.js
│ ├── logger.js
│ ├── monitor.js
│ ├── latencyMonitor.js
│ ├── extraMonitors.js
│ └── dashboard/
│ ├── server.js
│ └── public/
│ └── index.html
│
├── .github/
│ └── workflows/
│ ├── monitor.yml
│ └── pdf-readme.yml
│
├── assets/
│ ├── monitor-cover.gif
│ └── prints/
│
├── package.json
└── README.md
⚙️ Como Rodar Localmente
npm install
node src/monitor.js
node src/latencyMonitor.js
node src/extraMonitors.js
node src/dashboard/server.js
Acesse:
➡ http://localhost:4000
📊 Gráfico de Latência
✔ Dados de logs/latency.json
✔ Renderização com Chart.js
✔ Novos pontos a cada execução
✔ Suporte a múltiplos hosts
👩💻 Autoria
Criado com 💜 por Raquel G. de Souza
🔗 GitHub: https://github.com/rakellkizz
🔗 LinkedIn: https://www.linkedin.com/in/raquel-g-de-souza/