Monitor HTTP / HTTPS
O monitor HTTP/HTTPS é o tipo mais utilizado no TheAlert. Ele faz requisições HTTP para a URL configurada e avalia a resposta para determinar se o serviço está operacional.
O que é verificado
A cada check, o worker:
- Abre uma conexão TCP com o servidor
- Envia a requisição HTTP (método configurado)
- Aguarda a resposta (até o timeout configurado)
- Avalia o status code recebido
- (Opcional) Verifica se uma keyword está presente no body da resposta
- Registra o tempo de resposta total
Estados possíveis
| Estado | Condição |
|---|---|
| UP | Status code 2xx (ou o código esperado configurado) |
| DEGRADED | Status code 4xx — serviço respondeu mas com erro do cliente |
| DOWN | Status code 5xx — erro do servidor |
| DOWN | Timeout — servidor não respondeu no tempo configurado |
| DOWN | Erro de conexão — host inacessível, DNS não resolve etc. |
Um status DEGRADED também dispara alertas e abre incidentes, pois indica que o serviço não está respondendo normalmente. A distinção entre DOWN e DEGRADED é útil para diagnóstico.
Configurações disponíveis
URL
A URL completa do endpoint a ser monitorado. Deve incluir o protocolo (https:// ou http://).
https://suaempresa.com.br
https://api.suaempresa.com.br/health
http://monitor.interno.com.br:8080/statusMétodo HTTP
O método da requisição. Padrão: GET.
Métodos disponíveis: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS.
Use HEAD para verificar disponibilidade de forma mais leve — o servidor retorna apenas os headers, sem o body. Ideal para monitorar sites estáticos onde o conteúdo não muda.
Status code esperado
Por padrão, qualquer resposta 2xx é considerada UP. Você pode especificar um código exato:
200— somente OK201— somente Created301— aceitar redirecionamento como válido
Se seu endpoint retorna 301 ou 302 (redirect) e você não configurar isso, o monitor pode reportar DEGRADED. Ajuste o status esperado ou configure a URL final após o redirect.
Timeout
Tempo máximo que o worker aguarda pela resposta. Padrão: 10 segundos.
Se o servidor não responder dentro do timeout, o check é marcado como DOWN com a mensagem Request timeout.
Keyword no body
Palavra ou frase que deve estar presente no body da resposta para o check ser considerado UP.
Exemplos:
"status":"ok"— verifica se a resposta JSON contém esse fragmentoBem-vindo— verifica se a página contém esse textooperational— verifica presença de palavra específica
A verificação de keyword é case-sensitive. "status":"ok" e "status":"OK" são diferentes.
Body da requisição (POST/PUT)
Para métodos que enviam dados, você pode configurar o body da requisição em texto livre ou JSON.
Headers customizados
Adicione headers HTTP personalizados, como:
Authorization: Bearer seu-tokenContent-Type: application/jsonX-API-Key: sua-chave
Exemplo de configuração
Monitor para verificar uma API de health check:
| Campo | Valor |
|---|---|
| Nome | API de Pagamentos |
| URL | https://api.pagamentos.com.br/health |
| Tipo | HTTP / HTTPS |
| Método | GET |
| Status esperado | 200 |
| Timeout | 10s |
| Keyword | "healthy":true |
| Intervalo | 60 segundos |
Como o HTTPS é verificado
Para URLs https://, o worker valida automaticamente o certificado SSL. Se o certificado for inválido (expirado, autoassinado, hostname incorreto), o check falha com DOWN.
Para monitorar a expiração do certificado separadamente (e ser notificado antes de expirar), use o tipo de monitor SSL / Certificado.
Boas práticas
Crie um endpoint /health dedicado
Em vez de monitorar a homepage, crie um endpoint leve que verifica os subsistemas críticos (banco de dados, cache, filas) e retorna 200 apenas se tudo estiver OK.
{
"status": "healthy",
"database": "ok",
"cache": "ok",
"version": "1.4.2"
}Use keyword para validar conteúdo real Um servidor pode retornar 200 mas com uma página de erro genérica. Use keyword para garantir que o conteúdo esperado está presente.
Ajuste o timeout para sua realidade Se sua API normalmente responde em 200ms, um timeout de 10s pode mascarar degradação de performance. Considere usar valores menores (3-5s) para detectar lentidão mais cedo.
Monitore endpoints críticos separadamente Não monitore apenas a homepage. Crie monitores separados para:
- Endpoint de autenticação
- API de checkout/pagamento
- Endpoint de health/status
- CDN ou assets estáticos