Playbook — Incidente em produção (API lenta e erros 5xx)¶
Quando usar¶
Use este playbook quando houver aumento de latência, timeout ou crescimento de erros HTTP 5xx em ambiente produtivo.
Objetivo¶
- Restaurar o serviço com segurança.
- Minimizar impacto no cliente.
- Registrar contexto para pós-incidente.
Checklist rápido (5–15 min)¶
- Confirmar impacto (janela de tempo, endpoints afetados, percentual de erro).
- Acionar canal de incidente e definir responsável técnico.
- Verificar último deploy/configuração alterada.
- Inspecionar 3 sinais: métricas, logs e traces.
- Decidir: mitigação imediata (rollback, scale-out, feature flag).
Passo a passo operacional¶
1) Validar sintoma e escopo¶
- Quais rotas estão com erro?
- O problema é global ou regional?
- Começou após deploy, mudança de infra ou pico de tráfego?
Consultas úteis:
# Taxa de 5xx nos últimos 15 minutos (Prometheus)
rate(http_server_requests_seconds_count{status=~"5.."}[5m])
# Latência p95 por endpoint
histogram_quantile(0.95, sum(rate(http_server_requests_seconds_bucket[5m])) by (le, uri))
2) Correlacionar com mudanças¶
- Conferir histórico de deploy no período.
- Verificar flags, segredos e mudanças de config.
- Mapear dependências externas (DB, cache, filas, APIs de terceiros).
3) Diagnóstico por hipótese¶
Hipóteses comuns e como validar:
- CPU/memória saturada → checar uso por pod/instncia.
- Banco degradado → conexões esgotadas, lock, query lenta.
- Dependência externa lenta → timeout crescente em cliente HTTP.
- Regressão de código → erro iniciado após release recente.
4) Mitigação imediata¶
Escolha uma ação de menor risco:
- rollback para última versão estável;
- desativar feature problemática via flag;
- aumentar réplicas para absorver pico;
- reduzir timeout/retry agressivo que amplifica efeito cascata.
5) Comunicação do incidente¶
Template curto de atualização:
"Incidente ativo em API X desde HH:MM, impacto em endpoint Y, erro 5xx em Z%. Mitigação aplicada: . Próxima atualização em 15 min."
6) Critério de recuperação¶
- 5xx voltou para baseline.
- Latência p95/p99 estabilizou.
- Não há fila de erro aumentando.
Pós-incidente (até 48h)¶
- Abrir postmortem sem culpados.
- Registrar linha do tempo (detecção → mitigação → recuperação).
- Definir ações preventivas com responsável e prazo.
Erros comuns¶
- Focar em log sem validar métrica/traces em paralelo.
- Aplicar várias mudanças ao mesmo tempo (dificulta causalidade).
- Encerrar incidente sem critérios objetivos de recuperação.