Monitorização de API: verificações, asserções e jornadas de utilizador
Monitorize uma API para mais do que acessibilidade: verifique a resposta esperada, detete abrandamentos e alerte as pessoas certas quando o contrato falhar.
Escolha o monitor certo
Use HTTP para um endpoint simples e uma verificação de código de estado. Use API quando o pedido precisa de método, corpo, cabeçalhos, autenticação ou uma asserção de resposta. Use Browser quando o sucesso depende de vários passos visíveis para o utilizador, como iniciar sessão, navegar ou finalizar uma compra. Use Heartbeat quando o sistema que comunica é a melhor prova de que o trabalho em segundo plano terminou.
Configure uma asserção relevante
Comece com um endpoint estável de estado de saúde ou prontidão. Espere um código de estado específico e, quando útil, um pequeno valor no corpo da resposta que prove que a dependência está pronta. Guarde credenciais como segredos na configuração do monitor; nunca coloque credenciais de produção em documentação pública, páginas de estado ou código do lado do cliente.
GET https://api.example.com/health
Expected status: 200
Expected body: {"ok":true}Faça asserções sobre o corpo da resposta
Um código de estado apenas indica que o servidor respondeu. A verificação de palavra-chave valida o conteúdo devolvido. Introduza uma asserção por linha: todas as linhas têm de corresponder, pelo que várias linhas funcionam como E, não OU. Ative a correspondência por expressão regular para tratar cada linha como um padrão RE2 em vez de texto literal; assim pode validar valores que mudam, como um número de versão, uma marca temporal ou um de vários estados aceitáveis. Ative a opção de palavra-chave ausente para inverter toda a verificação e falhar quando o texto ou padrão for encontrado, o que permite detetar uma stack trace ou faixa de erro exposta numa página. O RE2 não suporta lookahead, lookbehind nem backreferences, e só é pesquisado o primeiro MB da resposta.
# Literal: every line must appear in the body
"status":"ok"
# Regular expression (RE2): every line must match
"status"\s*:\s*"(ok|healthy)"
"version":"4\.[0-9]+"Quando um endpoint não chega
Uma API pode devolver 200 enquanto o fluxo visível para o cliente continua a falhar. A monitorização de Browser pode validar a jornada de uma pessoa na aplicação. Para filas, tarefas cron, backups e pipelines de deploy, um heartbeat agendado é muitas vezes o sinal mais fiável porque confirma a conclusão, não apenas a disponibilidade.
Responda às falhas deliberadamente
Envie incidentes para os canais de notificação que a sua equipa realmente acompanha e adicione triggers para as ações que são seguras de automatizar. Mantenha verificações ruidosas separadas das verificações que afetam clientes, para que cada falha tenha um responsável e um caminho de notificação claros.
Guias relacionados
O guia de tipos de monitor cobre todos os sinais suportados. O guia de heartbeat inclui exemplos copiáveis para cron, workers e GitHub Actions; o guia de notificações explica onde os incidentes são entregues.