Documentation ¶
Index ¶
- type OutlierDetection
- func (*OutlierDetection) Descriptor() ([]byte, []int)
- func (this *OutlierDetection) Equal(that interface{}) bool
- func (m *OutlierDetection) GetBaseEjectionTime() *types.Duration
- func (m *OutlierDetection) GetConsecutiveGatewayFailure() *types.UInt32Value
- func (m *OutlierDetection) GetConsecutiveLocalOriginFailure() *types.UInt32Value
- func (m *OutlierDetection) GetConsecutive_5Xx() *types.UInt32Value
- func (m *OutlierDetection) GetEnforcingConsecutiveGatewayFailure() *types.UInt32Value
- func (m *OutlierDetection) GetEnforcingConsecutiveLocalOriginFailure() *types.UInt32Value
- func (m *OutlierDetection) GetEnforcingConsecutive_5Xx() *types.UInt32Value
- func (m *OutlierDetection) GetEnforcingLocalOriginSuccessRate() *types.UInt32Value
- func (m *OutlierDetection) GetEnforcingSuccessRate() *types.UInt32Value
- func (m *OutlierDetection) GetInterval() *types.Duration
- func (m *OutlierDetection) GetMaxEjectionPercent() *types.UInt32Value
- func (m *OutlierDetection) GetSplitExternalLocalOriginErrors() bool
- func (m *OutlierDetection) GetSuccessRateMinimumHosts() *types.UInt32Value
- func (m *OutlierDetection) GetSuccessRateRequestVolume() *types.UInt32Value
- func (m *OutlierDetection) GetSuccessRateStdevFactor() *types.UInt32Value
- func (m *OutlierDetection) Hash(hasher hash.Hash64) (uint64, error)
- func (*OutlierDetection) ProtoMessage()
- func (m *OutlierDetection) Reset()
- func (m *OutlierDetection) String() string
- func (m *OutlierDetection) XXX_DiscardUnknown()
- func (m *OutlierDetection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *OutlierDetection) XXX_Merge(src proto.Message)
- func (m *OutlierDetection) XXX_Size() int
- func (m *OutlierDetection) XXX_Unmarshal(b []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OutlierDetection ¶
type OutlierDetection struct { // The number of consecutive 5xx responses or local origin errors that are mapped // to 5xx error codes before a consecutive 5xx ejection // occurs. Defaults to 5. Consecutive_5Xx *types.UInt32Value `protobuf:"bytes,1,opt,name=consecutive_5xx,json=consecutive5xx,proto3" json:"consecutive_5xx,omitempty"` // The time interval between ejection analysis sweeps. This can result in // both new ejections as well as hosts being returned to service. Defaults // to 10000ms or 10s. Interval *types.Duration `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"` // The base time that a host is ejected for. The real time is equal to the // base time multiplied by the number of times the host has been ejected. // Defaults to 30000ms or 30s. BaseEjectionTime *types.Duration `protobuf:"bytes,3,opt,name=base_ejection_time,json=baseEjectionTime,proto3" json:"base_ejection_time,omitempty"` // The maximum % of an upstream cluster that can be ejected due to outlier // detection. Defaults to 10% but will eject at least one host regardless of the value. MaxEjectionPercent *types.UInt32Value `protobuf:"bytes,4,opt,name=max_ejection_percent,json=maxEjectionPercent,proto3" json:"max_ejection_percent,omitempty"` // The % chance that a host will be actually ejected when an outlier status // is detected through consecutive 5xx. This setting can be used to disable // ejection or to ramp it up slowly. Defaults to 100. EnforcingConsecutive_5Xx *types.UInt32Value `` /* 132-byte string literal not displayed */ // The % chance that a host will be actually ejected when an outlier status // is detected through success rate statistics. This setting can be used to // disable ejection or to ramp it up slowly. Defaults to 100. EnforcingSuccessRate *types.UInt32Value `protobuf:"bytes,6,opt,name=enforcing_success_rate,json=enforcingSuccessRate,proto3" json:"enforcing_success_rate,omitempty"` // The number of hosts in a cluster that must have enough request volume to // detect success rate outliers. If the number of hosts is less than this // setting, outlier detection via success rate statistics is not performed // for any host in the cluster. Defaults to 5. SuccessRateMinimumHosts *types.UInt32Value `` /* 134-byte string literal not displayed */ // The minimum number of total requests that must be collected in one // interval (as defined by the interval duration above) to include this host // in success rate based outlier detection. If the volume is lower than this // setting, outlier detection via success rate statistics is not performed // for that host. Defaults to 100. SuccessRateRequestVolume *types.UInt32Value `` /* 137-byte string literal not displayed */ // This factor is used to determine the ejection threshold for success rate // outlier ejection. The ejection threshold is the difference between the // mean success rate, and the product of this factor and the standard // deviation of the mean success rate: mean - (stdev * // success_rate_stdev_factor). This factor is divided by a thousand to get a // double. That is, if the desired factor is 1.9, the runtime value should // be 1900. Defaults to 1900. SuccessRateStdevFactor *types.UInt32Value `` /* 131-byte string literal not displayed */ // The number of consecutive gateway failures (502, 503, 504 status codes) // before a consecutive gateway failure ejection occurs. Defaults to 5. ConsecutiveGatewayFailure *types.UInt32Value `` /* 139-byte string literal not displayed */ // The % chance that a host will be actually ejected when an outlier status // is detected through consecutive gateway failures. This setting can be // used to disable ejection or to ramp it up slowly. Defaults to 0. EnforcingConsecutiveGatewayFailure *types.UInt32Value `` /* 168-byte string literal not displayed */ // Determines whether to distinguish local origin failures from external errors. If set to true // the following configuration parameters are taken into account: // :ref:`consecutive_local_origin_failure<envoy_api_field_cluster.OutlierDetection.consecutive_local_origin_failure>`, // :ref:`enforcing_consecutive_local_origin_failure<envoy_api_field_cluster.OutlierDetection.enforcing_consecutive_local_origin_failure>` // and // :ref:`enforcing_local_origin_success_rate<envoy_api_field_cluster.OutlierDetection.enforcing_local_origin_success_rate>`. // Defaults to false. SplitExternalLocalOriginErrors bool `` /* 159-byte string literal not displayed */ // The number of consecutive locally originated failures before ejection // occurs. Defaults to 5. Parameter takes effect only when // :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>` // is set to true. ConsecutiveLocalOriginFailure *types.UInt32Value `` /* 153-byte string literal not displayed */ // The % chance that a host will be actually ejected when an outlier status // is detected through consecutive locally originated failures. This setting can be // used to disable ejection or to ramp it up slowly. Defaults to 100. // Parameter takes effect only when // :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>` // is set to true. EnforcingConsecutiveLocalOriginFailure *types.UInt32Value `` /* 182-byte string literal not displayed */ // The % chance that a host will be actually ejected when an outlier status // is detected through success rate statistics for locally originated errors. // This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100. // Parameter takes effect only when // :ref:`split_external_local_origin_errors<envoy_api_field_cluster.OutlierDetection.split_external_local_origin_errors>` // is set to true. EnforcingLocalOriginSuccessRate *types.UInt32Value `` /* 161-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
See the :ref:`architecture overview <arch_overview_outlier_detection>` for more information on outlier detection.
func (*OutlierDetection) Descriptor ¶
func (*OutlierDetection) Descriptor() ([]byte, []int)
func (*OutlierDetection) Equal ¶
func (this *OutlierDetection) Equal(that interface{}) bool
func (*OutlierDetection) GetBaseEjectionTime ¶
func (m *OutlierDetection) GetBaseEjectionTime() *types.Duration
func (*OutlierDetection) GetConsecutiveGatewayFailure ¶
func (m *OutlierDetection) GetConsecutiveGatewayFailure() *types.UInt32Value
func (*OutlierDetection) GetConsecutiveLocalOriginFailure ¶
func (m *OutlierDetection) GetConsecutiveLocalOriginFailure() *types.UInt32Value
func (*OutlierDetection) GetConsecutive_5Xx ¶
func (m *OutlierDetection) GetConsecutive_5Xx() *types.UInt32Value
func (*OutlierDetection) GetEnforcingConsecutiveGatewayFailure ¶
func (m *OutlierDetection) GetEnforcingConsecutiveGatewayFailure() *types.UInt32Value
func (*OutlierDetection) GetEnforcingConsecutiveLocalOriginFailure ¶
func (m *OutlierDetection) GetEnforcingConsecutiveLocalOriginFailure() *types.UInt32Value
func (*OutlierDetection) GetEnforcingConsecutive_5Xx ¶
func (m *OutlierDetection) GetEnforcingConsecutive_5Xx() *types.UInt32Value
func (*OutlierDetection) GetEnforcingLocalOriginSuccessRate ¶
func (m *OutlierDetection) GetEnforcingLocalOriginSuccessRate() *types.UInt32Value
func (*OutlierDetection) GetEnforcingSuccessRate ¶
func (m *OutlierDetection) GetEnforcingSuccessRate() *types.UInt32Value
func (*OutlierDetection) GetInterval ¶
func (m *OutlierDetection) GetInterval() *types.Duration
func (*OutlierDetection) GetMaxEjectionPercent ¶
func (m *OutlierDetection) GetMaxEjectionPercent() *types.UInt32Value
func (*OutlierDetection) GetSplitExternalLocalOriginErrors ¶
func (m *OutlierDetection) GetSplitExternalLocalOriginErrors() bool
func (*OutlierDetection) GetSuccessRateMinimumHosts ¶
func (m *OutlierDetection) GetSuccessRateMinimumHosts() *types.UInt32Value
func (*OutlierDetection) GetSuccessRateRequestVolume ¶
func (m *OutlierDetection) GetSuccessRateRequestVolume() *types.UInt32Value
func (*OutlierDetection) GetSuccessRateStdevFactor ¶
func (m *OutlierDetection) GetSuccessRateStdevFactor() *types.UInt32Value
func (*OutlierDetection) Hash ¶ added in v1.2.13
func (m *OutlierDetection) Hash(hasher hash.Hash64) (uint64, error)
Hash function
func (*OutlierDetection) ProtoMessage ¶
func (*OutlierDetection) ProtoMessage()
func (*OutlierDetection) Reset ¶
func (m *OutlierDetection) Reset()
func (*OutlierDetection) String ¶
func (m *OutlierDetection) String() string
func (*OutlierDetection) XXX_DiscardUnknown ¶
func (m *OutlierDetection) XXX_DiscardUnknown()
func (*OutlierDetection) XXX_Marshal ¶
func (m *OutlierDetection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*OutlierDetection) XXX_Merge ¶
func (m *OutlierDetection) XXX_Merge(src proto.Message)
func (*OutlierDetection) XXX_Size ¶
func (m *OutlierDetection) XXX_Size() int
func (*OutlierDetection) XXX_Unmarshal ¶
func (m *OutlierDetection) XXX_Unmarshal(b []byte) error
Click to show internal directories.
Click to hide internal directories.