← All Docs
Runbooks
Runbook: Redis Failover
How to handle a Redis failover or outage in the rate-limit path.
How to handle a Redis failover or outage in the rate-limit path.
The rate-limit Redis holds all counter state: windows, daily budgets, quota usage. It is the only store in the hot path. This runbook covers what happens when it goes away and how to bring it back.
brume_ratelimit_degraded_total rising on the gateway's Prometheus metrics.degraded: true with X-Brume-RateLimit-Degraded: true.brume_ratelimit_eval_duration_seconds elevated just before degradation (connection timeouts), then fast again (fail-open short-circuit).The gateway fails open: every evaluation returns success: true, degraded: true. Traffic keeps moving; checks are unaccounted. This is deliberate — availability over correctness — and it is visible in the response and the metrics rather than silent.
Customer-facing impact during the window:
remaining/reset values in responses are not meaningful.timeout.fallback: 'deny' or onError: 'deny' will deny instead — that is their configured choice, not a gateway fault./readyz, brume_api_requests_total steady.brume_ratelimit_degraded_total stop incrementing and brume_ratelimit_eval_duration_seconds return to baseline.limit and one check call against a known namespace.brume_ratelimit_local_mismatch_total for any divergence between the in-process cache and Redis state; it should settle quickly.