Esse é um daqueles scripts que cabem em qualquer VPS de entrada (512 MB já sobra). Ele checa uma lista de URLs e imprime OK ou FALHOU com o tempo de resposta. Só biblioteca padrão.
1. O script
import time, urllib.request, sys
SITES = sys.argv[1:] or ["https://example.com"]
def check(url):
t = time.time()
try:
code = urllib.request.urlopen(url, timeout=10).status
except Exception as e:
return f"FALHOU {url} ({e})"
return f"OK {url} {code} {int((time.time()-t)*1000)}ms"
if __name__ == "__main__":
for s in SITES:
print(time.strftime("%H:%M:%S"), check(s))
Salve como /opt/monitor/monitor.py. Testei aqui: python3 monitor.py https://example.com devolveu OK https://example.com 200 68ms, e uma URL inexistente devolveu FALHOU com o erro.
2. Rodar a cada 5 minutos com systemd timer
/etc/systemd/system/monitor.service:
[Service]
Type=oneshot
ExecStart=/usr/bin/python3 /opt/monitor/monitor.py https://seusite.com.br
/etc/systemd/system/monitor.timer:
[Timer]
OnBootSec=1min
OnUnitActiveSec=5min
[Install]
WantedBy=timers.target
sudo systemctl daemon-reload
sudo systemctl enable --now monitor.timer
journalctl -u monitor.service -n 20
(Os arquivos systemd eu escrevi seguindo a documentação, não rodei num servidor nesta publicação; teste na sua máquina antes de confiar.)
3. Onde hospedar
Qualquer VPS Linux serve. A RackNerd lista na página oficial (02/11/2026) um plano de entrada com 512 MB, 1 vCore e 30 GB por US$ 26,99 por ano. Pra um monitor desses é suficiente; pra rodar modelo de IA, não.
Mais testes em pt-BR na newsletter: https://nuvemdev.substack.com
Divulgação: o link da RackNerd (https://go.nowto.link/racknerd) é de afiliado; posso ganhar comissão sem custo extra pra você.

Top comments (0)