CircuitBreakerConfig
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:139
Base configuration shared by all policies
Extends
Section titled “Extends”Properties
Section titled “Properties”failureOn?
Section titled “failureOn?”
optionalfailureOn?:number[]
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:147
Status codes considered failures. Default: [500, 502, 503, 504].
failureThreshold?
Section titled “failureThreshold?”
optionalfailureThreshold?:number
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:141
Number of failures before opening the circuit. Default: 5.
halfOpenMax?
Section titled “halfOpenMax?”
optionalhalfOpenMax?:number
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:145
Max concurrent probes allowed in half-open state. Default: 1.
optionalkey?: (c) =>string
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:151
Key extractor. Default: request URL pathname.
Parameters
Section titled “Parameters”Context
Returns
Section titled “Returns”string
onStateChange?
Section titled “onStateChange?”
optionalonStateChange?: (key,from,to) =>void|Promise<void>
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:164
Callback invoked on every state transition.
Called via safeCall so errors are swallowed - a failing callback
never blocks traffic. Useful for metrics, logging, or alerting.
Parameters
Section titled “Parameters”string
The circuit key that transitioned.
The previous circuit state.
The new circuit state.
Returns
Section titled “Returns”void | Promise<void>
openStatusCode?
Section titled “openStatusCode?”
optionalopenStatusCode?:number
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:153
HTTP status code when the circuit is open. Default: 503.
resetTimeoutMs?
Section titled “resetTimeoutMs?”
optionalresetTimeoutMs?:number
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:143
Time in ms before transitioning from open → half-open. Default: 30000.
optionalskip?: (c) =>boolean|Promise<boolean>
Defined in: packages/gateway/src/policies/types.ts:90
Skip this policy when condition returns true
Parameters
Section titled “Parameters”unknown
Returns
Section titled “Returns”boolean | Promise<boolean>
Inherited from
Section titled “Inherited from”store?
Section titled “store?”
optionalstore?:CircuitBreakerStore
Defined in: packages/gateway/src/policies/resilience/circuit-breaker.ts:149
Storage backend. Default: InMemoryCircuitBreakerStore.