SilentFail · Documentação de monitoramento

Instrumente jobs em minutos

Como enviar pings, entender estados, evitar alertas duplicados e validar seu monitoramento.

Modelo mental

Each job has a unique token. Send HTTP pings to mark lifecycle: start, success, fail. The monitoring worker runs every 60s to detect timeouts or missed executions (stale) and fires one alert per incident.

  • RUNNING: após start.
  • OK: após success dentro do intervalo esperado.
  • FAILED: fail explícito ou timeout (sem success dentro do timeout).
  • STALE: sem success dentro do intervalo esperado e não está em execução.
Endpoints

Início

POST https://<app>/api/ping/<TOKEN>/start
Headers: none required
Body: empty

Sucesso

POST https://<app>/api/ping/<TOKEN>/success
Body: empty

Falha

POST https://<app>/api/ping/<TOKEN>/fail
Body: optional { "message": "context about the error" }

Dica: use timeouts curtos no cliente (3-5s) para não travar o job por rede.

Boas práticas
  • Envie start no começo, success ao concluir e fail em exceções.
  • Defina expected_interval_minutes e timeout_minutes realistas para evitar falsos positivos.
  • Use tentativas finitas com backoff; evite loops infinitos.
  • Guarde o token em variáveis de ambiente; nunca commite em repositórios.
  • Um alerta por incidente; um success posterior reseta os alertas.
Teste rápido (smoke)

Use o script de smoke com um token de teste:

TEST_APP_URL="https://silent-fail.kreatives.io"
TEST_PING_TOKEN="your_token"
pnpm smoke

Isto envia start/success/fail para você ver eventos e status no dashboard.

Quando os alertas disparam?
  • FAILED: ping de falha ou timeout (rodando além de timeout_minutes).
  • STALE: sem success dentro de expected_interval_minutes e não em execução.
  • Dedup: um alerta por incidente; reseta no próximo success.
Docs do SilentFail | Instrumente jobs em minutos | SilentFail