Monitoramento cron

Os monitores cron dão a cada tarefa agendada (um backup, um processo em lote ou um script recorrente) uma URL única para enviar pings e avisam você quando um ping atrasa ou não chega. A tarefa é marcada como degradada quando perde o período e como fora do ar quando também perde a tolerância.

Como nos outros monitores, quando uma tarefa cron falha, você pode trabalhar com seu time para resolver o incidente e, se quiser, atualizar sua página de status.

Veja um exemplo de como fica sua lista de monitores cron:

Lista de monitores cron

O que um monitor cron faz?

  • Confirmar que suas tarefas cron rodam no horário (por meio de pings enviados pelas tarefas).
  • Receber alertas se uma tarefa atrasar ou não terminar.
  • Integrar com Slack, e-mail, SMS, ligação e mais para os alertas.

Ao clicar em um monitor cron, você vê mais detalhes:

Detalhes do monitor cron

Como adiciono um monitor cron?

Vá até seu projeto → Monitores → Adicionar monitor, escolha Cron/Heartbeat, aponte sua tarefa para a URL gerada e defina o período e a tolerância.

Adicionar monitor

Tipo de monitor

Selecione Cron/Heartbeat como tipo de monitor.

Tipo de monitor cron

Uma URL exclusiva é gerada para você. Sua tarefa cron deve enviar uma requisição HTTP (HEAD, GET ou POST) para essa URL cada vez que rodar.

O monitor tem sucesso se

Um monitor cron tem sucesso quando sua tarefa envia um ping para a URL gerada no horário. Você pode configurar:

  • Período: com que frequência a tarefa deve rodar (por exemplo, a cada 15 minutos).
  • Tolerância: tempo extra permitido antes de a tarefa ser considerada fora do ar.

Se o período terminar e a tarefa não enviar o ping, o monitor é marcado como degradado.

Se a tolerância terminar e a tarefa não enviar o ping, o monitor é marcado como fora do ar.

Você pode configurar alertas para ser avisado quando uma tarefa falhar, degradar ou se recuperar.

Sinalizando uma falha

Envie uma requisição à URL do monitor com /fail no final para marcar a tarefa como falha, mesmo que ela tenha rodado e enviado o ping ao monitor.

Isso é útil quando seu script encontra um erro e você quer que a Instatus registre a tarefa como falha na hora.

  • Ping de sucesso: https://cron.instatus.com/your-unique-url
  • Ping de falha: https://cron.instatus.com/your-unique-url/fail

Quando um sinal de falha é recebido, o monitor é marcado como fora do ar e os alertas são enviados na hora, conforme suas configurações de alerta.

Medindo o tempo de execução da tarefa

Envie duas requisições, /start quando a tarefa começar e o ping de sucesso ou de falha quando ela terminar, e a Instatus registra o tempo entre elas como o tempo de execução da tarefa:

  1. Sinal de início: envie uma requisição para /start quando a tarefa começar
  2. Sinal de sucesso/falha: envie uma requisição para a URL base quando a tarefa terminar ou falhar
  • Ping de início: https://cron.instatus.com/your-unique-url/start
  • Ping de sucesso: https://cron.instatus.com/your-unique-url
  • Ping de falha: https://cron.instatus.com/your-unique-url/fail

O tempo entre os sinais de início e de sucesso é registrado como o tempo de execução da tarefa. Isso ajuda a acompanhar o desempenho e identificar tarefas que estão demorando mais do que o esperado.

Se a tarefa falhar depois de enviar o sinal de início, envie um sinal de falha no lugar do de sucesso para marcá-la como falha e ainda assim registrar o tempo de execução.

Parabéns, você adicionou seu primeiro monitor cron!