O que é Chaos Engineering?
Chaos Engineering é a prática de injetar falhas controladas no seu sistema para descobrir vulnerabilidades antes que aconteçam em produção. A premissa é simples: se você sabe que sua infra vai falhar em algum momento, é melhor descobrir como o sistema se comporta durante um teste controlado do que às 3h da manhã com usuários reais afetados.
O httpdrop permite injetar caos diretamente no mock server — sem tocar no back-end real, sem scripts de injeção de falha complexos.
Sua aplicação
→
httpdrop Chaos Mode
20% → 503 · 800ms delay
20% → 503 · 800ms delay
→
Resposta (ou falha)
Tipos de caos que você pode injetar
Latência aleatória — Adicione delay de 200ms a 5000ms em um percentual das requisições. Teste se seu app tem timeout configurado corretamente.
Erros 5xx — Retorne 500, 502, 503 ou 504 em X% das requisições. Teste se o circuit breaker e a lógica de retry estão funcionando.
Por rota específica — Injete caos apenas no endpoint crítico (ex: só em
POST /payment) sem afetar o restante da API.
O que você deve descobrir com Chaos Engineering
- ✓Retry logic está funcionando? Se a API retorna 503 uma vez, o cliente tenta novamente automaticamente?
- ✓O timeout está configurado? Se a API demorar 10 segundos, o usuário vê uma mensagem de erro ou a tela trava?
- ✓O circuit breaker protege o sistema? Após N falhas seguidas, o sistema para de tentar e serve um fallback?
- ✓Os logs estão corretos? As falhas aparecem no sistema de observabilidade com contexto suficiente para debugar?
Configuração de Chaos Mode por rota
// 30% das requisições para /api/orders retornam 503
// com 800ms de latência adicional
{
"path": "/api/orders",
"method": "POST",
"rate": 30,
"status": 503,
"latency": 800
}
Metodologia: Comece com taxa baixa (5-10%) e aumente gradualmente. Monitore o comportamento da aplicação em cada etapa. Documente o ponto de ruptura — ele revela os gargalos da sua arquitetura.