O painel mostra CPU e memória, mas não avisa quando o site sai do ar às 3 da manhã. Um monitor externo testa a VPS de fora, de minuto em minuto, e alerta no celular.
Opção 1: UptimeRobot (gratuito, sem instalar nada)
- Crie a conta em uptimerobot.com.
- Add New Monitor:
- HTTP(s) para site/API: URL completa (
https://seudominio.com). Opcionalmente "Keyword" para exigir um texto na página (detecta página de erro que responde 200). - Ping para saber se a VPS responde (não funciona se você bloqueou ICMP no firewall).
- Port para serviços específicos: SSH 22, jogo 25565, banco 3306.
- HTTP(s) para site/API: URL completa (
- Intervalo: 5 minutos no plano gratuito.
- Alert Contacts: e-mail, Telegram (bot oficial), Slack, Discord, webhook. WhatsApp direto não existe no plano gratuito; use a opção do webhook abaixo.
Opção 2: Better Stack (gratuito, com página de status)
Mesma ideia, intervalo de 3 min no plano gratuito, alertas por e-mail/Slack/Telegram e uma página de status pública para os seus clientes.
Alerta no WhatsApp
Os monitores enviam webhook. Se você tem a Evolution API ou o n8n rodando em outra VPS (não na mesma que está sendo monitorada!), aponte o webhook para um fluxo que envia a mensagem para o seu número. No UptimeRobot: Alert Contact → Webhook → URL do webhook do n8n; o fluxo lê monitorFriendlyName e alertType e envia o texto.
Sem infraestrutura própria: o Telegram é o caminho mais simples e é nativo nos dois serviços.
Monitorar de dentro (recursos)
Para alertar sobre disco cheio, RAM e CPU, o monitor externo não enxerga. Opções leves:
- Netdata (
bash <(curl -Ss https://get.netdata.cloud/kickstart.sh)): painel completo em tempo real na porta 19999 (restrinja por IP ou Tailscale) com alertas por Telegram. - Script no cron que testa
df -he dispara o webhook quando passar de 90%.
Sobre o que fazer quando alertar
O primeiro passo continua sendo o checklist de VPS offline. E tenha o monitor do LinuxGSM ou restart: unless-stopped no Docker para que serviços subam sozinhos.