cluster

package
v0.0.0-...-113c6ea Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 27, 2019 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Overview

Package cluster is a generated protocol buffer package.

It is generated from these files:

envoy/api/v2/cluster/circuit_breaker.proto
envoy/api/v2/cluster/outlier_detection.proto

It has these top-level messages:

CircuitBreakers
OutlierDetection

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthCircuitBreaker = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowCircuitBreaker   = fmt.Errorf("proto: integer overflow")
)
View Source
var (
	ErrInvalidLengthOutlierDetection = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowOutlierDetection   = fmt.Errorf("proto: integer overflow")
)

Functions

This section is empty.

Types

type CircuitBreakers

type CircuitBreakers struct {
	// If multiple :ref:`Thresholds<envoy_api_msg_cluster.CircuitBreakers.Thresholds>`
	// are defined with the same :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`,
	// the first one in the list is used. If no Thresholds is defined for a given
	// :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`, the default values
	// are used.
	Thresholds []*CircuitBreakers_Thresholds `protobuf:"bytes,1,rep,name=thresholds" json:"thresholds,omitempty"`
}

:ref:`Circuit breaking<arch_overview_circuit_break>` settings can be specified individually for each defined priority.

func (*CircuitBreakers) Descriptor

func (*CircuitBreakers) Descriptor() ([]byte, []int)

func (*CircuitBreakers) Equal

func (this *CircuitBreakers) Equal(that interface{}) bool

func (*CircuitBreakers) GetThresholds

func (m *CircuitBreakers) GetThresholds() []*CircuitBreakers_Thresholds

func (*CircuitBreakers) Marshal

func (m *CircuitBreakers) Marshal() (dAtA []byte, err error)

func (*CircuitBreakers) MarshalTo

func (m *CircuitBreakers) MarshalTo(dAtA []byte) (int, error)

func (*CircuitBreakers) ProtoMessage

func (*CircuitBreakers) ProtoMessage()

func (*CircuitBreakers) Reset

func (m *CircuitBreakers) Reset()

func (*CircuitBreakers) Size

func (m *CircuitBreakers) Size() (n int)

func (*CircuitBreakers) String

func (m *CircuitBreakers) String() string

func (*CircuitBreakers) Unmarshal

func (m *CircuitBreakers) Unmarshal(dAtA []byte) error

func (*CircuitBreakers) Validate

func (m *CircuitBreakers) Validate() error

Validate checks the field values on CircuitBreakers with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type CircuitBreakersValidationError

type CircuitBreakersValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

CircuitBreakersValidationError is the validation error returned by CircuitBreakers.Validate if the designated constraints aren't met.

func (CircuitBreakersValidationError) Error

Error satisfies the builtin error interface

type CircuitBreakers_Thresholds

type CircuitBreakers_Thresholds struct {
	// The :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`
	// the specified CircuitBreaker settings apply to.
	// [#comment:TODO(htuch): add (validate.rules).enum.defined_only = true once
	// https://github.com/lyft/protoc-gen-validate/issues/42 is resolved.]
	Priority envoy_api_v2_core.RoutingPriority `protobuf:"varint,1,opt,name=priority,proto3,enum=envoy.api.v2.core.RoutingPriority" json:"priority,omitempty"`
	// The maximum number of connections that Envoy will make to the upstream
	// cluster. If not specified, the default is 1024.
	MaxConnections *google_protobuf1.UInt32Value `protobuf:"bytes,2,opt,name=max_connections,json=maxConnections" json:"max_connections,omitempty"`
	// The maximum number of pending requests that Envoy will allow to the
	// upstream cluster. If not specified, the default is 1024.
	MaxPendingRequests *google_protobuf1.UInt32Value `protobuf:"bytes,3,opt,name=max_pending_requests,json=maxPendingRequests" json:"max_pending_requests,omitempty"`
	// The maximum number of parallel requests that Envoy will make to the
	// upstream cluster. If not specified, the default is 1024.
	MaxRequests *google_protobuf1.UInt32Value `protobuf:"bytes,4,opt,name=max_requests,json=maxRequests" json:"max_requests,omitempty"`
	// The maximum number of parallel retries that Envoy will allow to the
	// upstream cluster. If not specified, the default is 3.
	MaxRetries *google_protobuf1.UInt32Value `protobuf:"bytes,5,opt,name=max_retries,json=maxRetries" json:"max_retries,omitempty"`
}

A Thresholds defines CircuitBreaker settings for a :ref:`RoutingPriority<envoy_api_enum_core.RoutingPriority>`.

func (*CircuitBreakers_Thresholds) Descriptor

func (*CircuitBreakers_Thresholds) Descriptor() ([]byte, []int)

func (*CircuitBreakers_Thresholds) Equal

func (this *CircuitBreakers_Thresholds) Equal(that interface{}) bool

func (*CircuitBreakers_Thresholds) GetMaxConnections

func (*CircuitBreakers_Thresholds) GetMaxPendingRequests

func (m *CircuitBreakers_Thresholds) GetMaxPendingRequests() *google_protobuf1.UInt32Value

func (*CircuitBreakers_Thresholds) GetMaxRequests

func (*CircuitBreakers_Thresholds) GetMaxRetries

func (*CircuitBreakers_Thresholds) GetPriority

func (*CircuitBreakers_Thresholds) Marshal

func (m *CircuitBreakers_Thresholds) Marshal() (dAtA []byte, err error)

func (*CircuitBreakers_Thresholds) MarshalTo

func (m *CircuitBreakers_Thresholds) MarshalTo(dAtA []byte) (int, error)

func (*CircuitBreakers_Thresholds) ProtoMessage

func (*CircuitBreakers_Thresholds) ProtoMessage()

func (*CircuitBreakers_Thresholds) Reset

func (m *CircuitBreakers_Thresholds) Reset()

func (*CircuitBreakers_Thresholds) Size

func (m *CircuitBreakers_Thresholds) Size() (n int)

func (*CircuitBreakers_Thresholds) String

func (m *CircuitBreakers_Thresholds) String() string

func (*CircuitBreakers_Thresholds) Unmarshal

func (m *CircuitBreakers_Thresholds) Unmarshal(dAtA []byte) error

func (*CircuitBreakers_Thresholds) Validate

func (m *CircuitBreakers_Thresholds) Validate() error

Validate checks the field values on CircuitBreakers_Thresholds with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type CircuitBreakers_ThresholdsValidationError

type CircuitBreakers_ThresholdsValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

CircuitBreakers_ThresholdsValidationError is the validation error returned by CircuitBreakers_Thresholds.Validate if the designated constraints aren't met.

func (CircuitBreakers_ThresholdsValidationError) Error

Error satisfies the builtin error interface

type OutlierDetection

type OutlierDetection struct {
	// The number of consecutive 5xx responses before a consecutive 5xx ejection
	// occurs. Defaults to 5.
	Consecutive_5Xx *google_protobuf1.UInt32Value `protobuf:"bytes,1,opt,name=consecutive_5xx,json=consecutive5xx" 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 *google_protobuf3.Duration `protobuf:"bytes,2,opt,name=interval" 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 *google_protobuf3.Duration `protobuf:"bytes,3,opt,name=base_ejection_time,json=baseEjectionTime" 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 *google_protobuf1.UInt32Value `protobuf:"bytes,4,opt,name=max_ejection_percent,json=maxEjectionPercent" 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 *google_protobuf1.UInt32Value `protobuf:"bytes,5,opt,name=enforcing_consecutive_5xx,json=enforcingConsecutive5xx" json:"enforcing_consecutive_5xx,omitempty"`
	// 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 *google_protobuf1.UInt32Value `protobuf:"bytes,6,opt,name=enforcing_success_rate,json=enforcingSuccessRate" 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 *google_protobuf1.UInt32Value `` /* 127-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 *google_protobuf1.UInt32Value `` /* 130-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 *google_protobuf1.UInt32Value `protobuf:"bytes,9,opt,name=success_rate_stdev_factor,json=successRateStdevFactor" json:"success_rate_stdev_factor,omitempty"`
	// The number of consecutive gateway failures (502, 503, 504 status or
	// connection errors that are mapped to one of those status codes) before a
	// consecutive gateway failure ejection occurs. Defaults to 5.
	ConsecutiveGatewayFailure *google_protobuf1.UInt32Value `` /* 132-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 *google_protobuf1.UInt32Value `` /* 161-byte string literal not displayed */
}

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() *google_protobuf3.Duration

func (*OutlierDetection) GetConsecutiveGatewayFailure

func (m *OutlierDetection) GetConsecutiveGatewayFailure() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetConsecutive_5Xx

func (m *OutlierDetection) GetConsecutive_5Xx() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetEnforcingConsecutiveGatewayFailure

func (m *OutlierDetection) GetEnforcingConsecutiveGatewayFailure() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetEnforcingConsecutive_5Xx

func (m *OutlierDetection) GetEnforcingConsecutive_5Xx() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetEnforcingSuccessRate

func (m *OutlierDetection) GetEnforcingSuccessRate() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetInterval

func (m *OutlierDetection) GetInterval() *google_protobuf3.Duration

func (*OutlierDetection) GetMaxEjectionPercent

func (m *OutlierDetection) GetMaxEjectionPercent() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetSuccessRateMinimumHosts

func (m *OutlierDetection) GetSuccessRateMinimumHosts() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetSuccessRateRequestVolume

func (m *OutlierDetection) GetSuccessRateRequestVolume() *google_protobuf1.UInt32Value

func (*OutlierDetection) GetSuccessRateStdevFactor

func (m *OutlierDetection) GetSuccessRateStdevFactor() *google_protobuf1.UInt32Value

func (*OutlierDetection) Marshal

func (m *OutlierDetection) Marshal() (dAtA []byte, err error)

func (*OutlierDetection) MarshalTo

func (m *OutlierDetection) MarshalTo(dAtA []byte) (int, error)

func (*OutlierDetection) ProtoMessage

func (*OutlierDetection) ProtoMessage()

func (*OutlierDetection) Reset

func (m *OutlierDetection) Reset()

func (*OutlierDetection) Size

func (m *OutlierDetection) Size() (n int)

func (*OutlierDetection) String

func (m *OutlierDetection) String() string

func (*OutlierDetection) Unmarshal

func (m *OutlierDetection) Unmarshal(dAtA []byte) error

func (*OutlierDetection) Validate

func (m *OutlierDetection) Validate() error

Validate checks the field values on OutlierDetection with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type OutlierDetectionValidationError

type OutlierDetectionValidationError struct {
	Field  string
	Reason string
	Cause  error
	Key    bool
}

OutlierDetectionValidationError is the validation error returned by OutlierDetection.Validate if the designated constraints aren't met.

func (OutlierDetectionValidationError) Error

Error satisfies the builtin error interface

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL