# Circuit breakers¶

## cluster.CircuitBreakers¶

[cluster.CircuitBreakers proto]

Circuit breaking settings can be specified individually for each defined priority.

{
"thresholds": []
}

thresholds
(cluster.CircuitBreakers.Thresholds) If multiple Thresholds are defined with the same RoutingPriority, the first one in the list is used. If no Thresholds is defined for a given RoutingPriority, the default values are used.

## cluster.CircuitBreakers.Thresholds¶

[cluster.CircuitBreakers.Thresholds proto]

A Thresholds defines CircuitBreaker settings for a RoutingPriority.

{
"priority": "...",
"max_connections": "{...}",
"max_pending_requests": "{...}",
"max_requests": "{...}",
"max_retries": "{...}",
"track_remaining": "...",
"max_connection_pools": "{...}"
}

priority
(core.RoutingPriority) The RoutingPriority the specified CircuitBreaker settings apply to.
max_connections
(UInt32Value) The maximum number of connections that Envoy will make to the upstream cluster. If not specified, the default is 1024.
max_pending_requests
(UInt32Value) The maximum number of pending requests that Envoy will allow to the upstream cluster. If not specified, the default is 1024.
max_requests
(UInt32Value) The maximum number of parallel requests that Envoy will make to the upstream cluster. If not specified, the default is 1024.
max_retries
(UInt32Value) The maximum number of parallel retries that Envoy will allow to the upstream cluster. If not specified, the default is 3.
track_remaining
(bool) If track_remaining is true, then stats will be published that expose the number of resources remaining until the circuit breakers open. If not specified, the default is false.
max_connection_pools
(UInt32Value) The maximum number of connection pools per cluster that Envoy will concurrently support at once. If not specified, the default is unlimited. Set this for clusters which create a large number of connection pools. See Circuit Breaking for more details.