Circuit breakers¶
config.cluster.v3.CircuitBreakers¶
[config.cluster.v3.CircuitBreakers proto]
Circuit breaking settings can be specified individually for each defined priority.
{
  "thresholds": []
}
- thresholds
- (config.cluster.v3.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. 
config.cluster.v3.CircuitBreakers.Thresholds¶
[config.cluster.v3.CircuitBreakers.Thresholds proto]
A Thresholds defines CircuitBreaker settings for a RoutingPriority.
{
  "priority": "...",
  "max_connections": "{...}",
  "max_pending_requests": "{...}",
  "max_requests": "{...}",
  "max_retries": "{...}",
  "retry_budget": "{...}",
  "track_remaining": "...",
  "max_connection_pools": "{...}"
}
- priority
- (config.core.v3.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. 
- retry_budget
- (config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget) Specifies a limit on concurrent retries in relation to the number of active requests. This parameter is optional. - Note - If this field is set, the retry budget will override any configured retry circuit breaker. 
- 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. - Note - If a retry budget is used in lieu of the max_retries circuit breaker, the remaining retry resources remaining will not be tracked. 
- 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. 
config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget¶
[config.cluster.v3.CircuitBreakers.Thresholds.RetryBudget proto]
{
  "budget_percent": "{...}",
  "min_retry_concurrency": "{...}"
}
- budget_percent
- (type.v3.Percent) Specifies the limit on concurrent retries as a percentage of the sum of active requests and active pending requests. For example, if there are 100 active requests and the budget_percent is set to 25, there may be 25 active retries. - This parameter is optional. Defaults to 20%. 
- min_retry_concurrency
- (UInt32Value) Specifies the minimum retry concurrency allowed for the retry budget. The limit on the number of active retries may never go below this number. - This parameter is optional. Defaults to 3.