What is Chaos Engineering?
Chaos Engineering is the practice of injecting controlled failures into your system to uncover vulnerabilities before they happen in production. The premise is simple: if you know your infrastructure will fail at some point, it's better to find out how your system behaves during a controlled test than at 3am with real users affected.
httpdrop lets you inject chaos directly into the mock server — without touching the real backend, without complex failure injection scripts.
Your application
→
httpdrop Chaos Mode
20% → 503 · 800ms delay
20% → 503 · 800ms delay
→
Response (or failure)
Types of chaos you can inject
Random latency — Add a delay of 200ms to 5000ms on a percentage of requests. Test whether your app has timeouts configured correctly.
5xx errors — Return 500, 502, 503 or 504 on X% of requests. Test whether the circuit breaker and retry logic are working.
Per specific route — Inject chaos only on the critical endpoint (e.g. only on
POST /payment) without affecting the rest of the API.
What to discover with Chaos Engineering
- ✓Is retry logic working? If the API returns 503 once, does the client retry automatically?
- ✓Is timeout configured? If the API takes 10 seconds, does the user see an error message or does the screen freeze?
- ✓Does the circuit breaker protect the system? After N consecutive failures, does the system stop retrying and serve a fallback?
- ✓Are logs correct? Do failures appear in the observability system with enough context to debug?
Chaos Mode configuration per route
// 30% of requests to /api/orders return 503
// with an additional 800ms of latency
{
"path": "/api/orders",
"method": "POST",
"rate": 30,
"status": 503,
"latency": 800
}
Methodology: Start with a low rate (5-10%) and gradually increase. Monitor application behavior at each step. Document the breaking point — it reveals your architecture's bottlenecks.