Proto: outlier_detection_policy.proto

Package: resilience.policy.gloo.solo.io

Types:

OutlierDetectionPolicyReport

FieldDescription
workspaces(repeated OutlierDetectionPolicyReport.WorkspacesEntry)

selectedDestinationPorts(repeated common.gloo.solo.io.DestinationReference)

A list of destination ports selected by the policy.

OutlierDetectionPolicyReport.WorkspacesEntry

FieldDescription
key(string)

value(common.gloo.solo.io.Report)

OutlierDetectionPolicySpec

OutlierDetectionPolicy is used to configure outlier detection on the selected destinations. Specifying this field requires an empty source_selector because it must apply to all traffic. OutlierDetectionPolicies are applied at the Destination level.

For VirtualDestinations, traffic will not be sent to deployments that are unavailable by default. An OutlierDetectionPolicy will add configuration to also eject a deployment that is returning too many 5xx HTTP status codes.

FieldDescription
applyToDestinations(repeated common.gloo.solo.io.DestinationSelector)

select the destinations where the policy will be applied if left empty, will apply to all destinations in the workspace.
config(OutlierDetectionPolicySpec.Config)

The details of the OutlierDetectionPolicy to apply to the selected destinations.

OutlierDetectionPolicySpec.Config

FieldDescription
consecutiveErrors(uint32)

The number of 5xx errors before a destination is removed from the healthy connection pool. The default is 5.
interval(google.protobuf.Duration)

The amount of time between analyzing destinations for ejection. Set this value as an integer plus a unit of time, in the format 1h, 1m, 1s, or 1ms. The value must be at least 1ms, and defaults to 10s. For information about the value format, see the Google protocol buffer documentation.
baseEjectionTime(google.protobuf.Duration)

The minimum time duration for ejection, or the time when a destination is considered unhealthy and not used for load balancing. Set this value as an integer plus a unit of time, in the format 1h, 1m, 1s, or 1ms. The value must be at least 1ms, and defaults to 30s. For information about the value format, see the Google protocol buffer documentation.
maxEjectionPercent(uint32)

The maximum percentage of destinations that can be removed from the healthy connection pool at a time. For example, if you have 10 total destinations that the policy selects, and set this value to 50 percent, 5 destinations can be removed at once. At least 1 destination can always be removed, regardless of the value you set. You can set this value between 0 and 100, with a default of 100.

OutlierDetectionPolicyStatus

reflects the status of the OutlierDetectionPolicy

FieldDescription
common(common.gloo.solo.io.Status)

numSelectedDestinationPorts(uint32)

The number of destination ports selected by the policy.