endpoint

package
v1.36.3-20240222201538... Latest Latest
Warning

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

Go to latest
Published: unknown License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const LbEndpoint_EndpointName_case case_LbEndpoint_HostIdentifier = 5
View Source
const LbEndpoint_Endpoint_case case_LbEndpoint_HostIdentifier = 1
View Source
const LbEndpoint_HostIdentifier_not_set_case case_LbEndpoint_HostIdentifier = 0

Variables

View Source
var File_envoy_api_v2_endpoint_endpoint_components_proto protoreflect.FileDescriptor
View Source
var File_envoy_api_v2_endpoint_endpoint_proto protoreflect.FileDescriptor
View Source
var File_envoy_api_v2_endpoint_load_report_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ClusterStats

type ClusterStats struct {

	// The name of the cluster.
	ClusterName string `protobuf:"bytes,1,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	// The eds_cluster_config service_name of the cluster.
	// It's possible that two clusters send the same service_name to EDS,
	// in that case, the management server is supposed to do aggregation on the load reports.
	ClusterServiceName string `protobuf:"bytes,6,opt,name=cluster_service_name,json=clusterServiceName,proto3" json:"cluster_service_name,omitempty"`
	// Need at least one.
	UpstreamLocalityStats []*UpstreamLocalityStats `` /* 126-byte string literal not displayed */
	// Cluster-level stats such as total_successful_requests may be computed by
	// summing upstream_locality_stats. In addition, below there are additional
	// cluster-wide stats.
	//
	// The total number of dropped requests. This covers requests
	// deliberately dropped by the drop_overload policy and circuit breaking.
	TotalDroppedRequests uint64 `protobuf:"varint,3,opt,name=total_dropped_requests,json=totalDroppedRequests,proto3" json:"total_dropped_requests,omitempty"`
	// Information about deliberately dropped requests for each category specified
	// in the DropOverload policy.
	DroppedRequests []*ClusterStats_DroppedRequests `protobuf:"bytes,5,rep,name=dropped_requests,json=droppedRequests,proto3" json:"dropped_requests,omitempty"`
	// Period over which the actual load report occurred. This will be guaranteed to include every
	// request reported. Due to system load and delays between the *LoadStatsRequest* sent from Envoy
	// and the *LoadStatsResponse* message sent from the management server, this may be longer than
	// the requested load reporting interval in the *LoadStatsResponse*.
	LoadReportInterval *durationpb.Duration `protobuf:"bytes,4,opt,name=load_report_interval,json=loadReportInterval,proto3" json:"load_report_interval,omitempty"`
	// contains filtered or unexported fields
}

Per cluster load stats. Envoy reports these stats a management server in a :ref:`LoadStatsRequest<envoy_api_msg_service.load_stats.v2.LoadStatsRequest>` [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs. Next ID: 7 [#next-free-field: 7]

func (*ClusterStats) ClearLoadReportInterval

func (x *ClusterStats) ClearLoadReportInterval()

func (*ClusterStats) GetClusterName

func (x *ClusterStats) GetClusterName() string

func (*ClusterStats) GetClusterServiceName

func (x *ClusterStats) GetClusterServiceName() string

func (*ClusterStats) GetDroppedRequests

func (x *ClusterStats) GetDroppedRequests() []*ClusterStats_DroppedRequests

func (*ClusterStats) GetLoadReportInterval

func (x *ClusterStats) GetLoadReportInterval() *durationpb.Duration

func (*ClusterStats) GetTotalDroppedRequests

func (x *ClusterStats) GetTotalDroppedRequests() uint64

func (*ClusterStats) GetUpstreamLocalityStats

func (x *ClusterStats) GetUpstreamLocalityStats() []*UpstreamLocalityStats

func (*ClusterStats) HasLoadReportInterval

func (x *ClusterStats) HasLoadReportInterval() bool

func (*ClusterStats) ProtoMessage

func (*ClusterStats) ProtoMessage()

func (*ClusterStats) ProtoReflect

func (x *ClusterStats) ProtoReflect() protoreflect.Message

func (*ClusterStats) Reset

func (x *ClusterStats) Reset()

func (*ClusterStats) SetClusterName

func (x *ClusterStats) SetClusterName(v string)

func (*ClusterStats) SetClusterServiceName

func (x *ClusterStats) SetClusterServiceName(v string)

func (*ClusterStats) SetDroppedRequests

func (x *ClusterStats) SetDroppedRequests(v []*ClusterStats_DroppedRequests)

func (*ClusterStats) SetLoadReportInterval

func (x *ClusterStats) SetLoadReportInterval(v *durationpb.Duration)

func (*ClusterStats) SetTotalDroppedRequests

func (x *ClusterStats) SetTotalDroppedRequests(v uint64)

func (*ClusterStats) SetUpstreamLocalityStats

func (x *ClusterStats) SetUpstreamLocalityStats(v []*UpstreamLocalityStats)

func (*ClusterStats) String

func (x *ClusterStats) String() string

type ClusterStats_DroppedRequests

type ClusterStats_DroppedRequests struct {

	// Identifier for the policy specifying the drop.
	Category string `protobuf:"bytes,1,opt,name=category,proto3" json:"category,omitempty"`
	// Total number of deliberately dropped requests for the category.
	DroppedCount uint64 `protobuf:"varint,2,opt,name=dropped_count,json=droppedCount,proto3" json:"dropped_count,omitempty"`
	// contains filtered or unexported fields
}

func (*ClusterStats_DroppedRequests) GetCategory

func (x *ClusterStats_DroppedRequests) GetCategory() string

func (*ClusterStats_DroppedRequests) GetDroppedCount

func (x *ClusterStats_DroppedRequests) GetDroppedCount() uint64

func (*ClusterStats_DroppedRequests) ProtoMessage

func (*ClusterStats_DroppedRequests) ProtoMessage()

func (*ClusterStats_DroppedRequests) ProtoReflect

func (*ClusterStats_DroppedRequests) Reset

func (x *ClusterStats_DroppedRequests) Reset()

func (*ClusterStats_DroppedRequests) SetCategory

func (x *ClusterStats_DroppedRequests) SetCategory(v string)

func (*ClusterStats_DroppedRequests) SetDroppedCount

func (x *ClusterStats_DroppedRequests) SetDroppedCount(v uint64)

func (*ClusterStats_DroppedRequests) String

type ClusterStats_DroppedRequests_builder

type ClusterStats_DroppedRequests_builder struct {

	// Identifier for the policy specifying the drop.
	Category string
	// Total number of deliberately dropped requests for the category.
	DroppedCount uint64
	// contains filtered or unexported fields
}

func (ClusterStats_DroppedRequests_builder) Build

type ClusterStats_builder

type ClusterStats_builder struct {

	// The name of the cluster.
	ClusterName string
	// The eds_cluster_config service_name of the cluster.
	// It's possible that two clusters send the same service_name to EDS,
	// in that case, the management server is supposed to do aggregation on the load reports.
	ClusterServiceName string
	// Need at least one.
	UpstreamLocalityStats []*UpstreamLocalityStats
	// Cluster-level stats such as total_successful_requests may be computed by
	// summing upstream_locality_stats. In addition, below there are additional
	// cluster-wide stats.
	//
	// The total number of dropped requests. This covers requests
	// deliberately dropped by the drop_overload policy and circuit breaking.
	TotalDroppedRequests uint64
	// Information about deliberately dropped requests for each category specified
	// in the DropOverload policy.
	DroppedRequests []*ClusterStats_DroppedRequests
	// Period over which the actual load report occurred. This will be guaranteed to include every
	// request reported. Due to system load and delays between the *LoadStatsRequest* sent from Envoy
	// and the *LoadStatsResponse* message sent from the management server, this may be longer than
	// the requested load reporting interval in the *LoadStatsResponse*.
	LoadReportInterval *durationpb.Duration
	// contains filtered or unexported fields
}

func (ClusterStats_builder) Build

func (b0 ClusterStats_builder) Build() *ClusterStats

type Endpoint

type Endpoint struct {

	// The upstream host address.
	//
	// .. attention::
	//
	//	The form of host address depends on the given cluster type. For STATIC or EDS,
	//	it is expected to be a direct IP address (or something resolvable by the
	//	specified :ref:`resolver <envoy_api_field_core.SocketAddress.resolver_name>`
	//	in the Address). For LOGICAL or STRICT DNS, it is expected to be hostname,
	//	and will be resolved via DNS.
	Address *core.Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// The optional health check configuration is used as configuration for the
	// health checker to contact the health checked host.
	//
	// .. attention::
	//
	//	This takes into effect only for upstream clusters with
	//	:ref:`active health checking <arch_overview_health_checking>` enabled.
	HealthCheckConfig *Endpoint_HealthCheckConfig `protobuf:"bytes,2,opt,name=health_check_config,json=healthCheckConfig,proto3" json:"health_check_config,omitempty"`
	// The hostname associated with this endpoint. This hostname is not used for routing or address
	// resolution. If provided, it will be associated with the endpoint, and can be used for features
	// that require a hostname, like
	// :ref:`auto_host_rewrite <envoy_api_field_route.RouteAction.auto_host_rewrite>`.
	Hostname string `protobuf:"bytes,3,opt,name=hostname,proto3" json:"hostname,omitempty"`
	// contains filtered or unexported fields
}

Upstream host identifier.

func (*Endpoint) ClearAddress

func (x *Endpoint) ClearAddress()

func (*Endpoint) ClearHealthCheckConfig

func (x *Endpoint) ClearHealthCheckConfig()

func (*Endpoint) GetAddress

func (x *Endpoint) GetAddress() *core.Address

func (*Endpoint) GetHealthCheckConfig

func (x *Endpoint) GetHealthCheckConfig() *Endpoint_HealthCheckConfig

func (*Endpoint) GetHostname

func (x *Endpoint) GetHostname() string

func (*Endpoint) HasAddress

func (x *Endpoint) HasAddress() bool

func (*Endpoint) HasHealthCheckConfig

func (x *Endpoint) HasHealthCheckConfig() bool

func (*Endpoint) ProtoMessage

func (*Endpoint) ProtoMessage()

func (*Endpoint) ProtoReflect

func (x *Endpoint) ProtoReflect() protoreflect.Message

func (*Endpoint) Reset

func (x *Endpoint) Reset()

func (*Endpoint) SetAddress

func (x *Endpoint) SetAddress(v *core.Address)

func (*Endpoint) SetHealthCheckConfig

func (x *Endpoint) SetHealthCheckConfig(v *Endpoint_HealthCheckConfig)

func (*Endpoint) SetHostname

func (x *Endpoint) SetHostname(v string)

func (*Endpoint) String

func (x *Endpoint) String() string

type EndpointLoadMetricStats

type EndpointLoadMetricStats struct {

	// Name of the metric; may be empty.
	MetricName string `protobuf:"bytes,1,opt,name=metric_name,json=metricName,proto3" json:"metric_name,omitempty"`
	// Number of calls that finished and included this metric.
	NumRequestsFinishedWithMetric uint64 `` /* 155-byte string literal not displayed */
	// Sum of metric values across all calls that finished with this metric for
	// load_reporting_interval.
	TotalMetricValue float64 `protobuf:"fixed64,3,opt,name=total_metric_value,json=totalMetricValue,proto3" json:"total_metric_value,omitempty"`
	// contains filtered or unexported fields
}

[#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.

func (*EndpointLoadMetricStats) GetMetricName

func (x *EndpointLoadMetricStats) GetMetricName() string

func (*EndpointLoadMetricStats) GetNumRequestsFinishedWithMetric

func (x *EndpointLoadMetricStats) GetNumRequestsFinishedWithMetric() uint64

func (*EndpointLoadMetricStats) GetTotalMetricValue

func (x *EndpointLoadMetricStats) GetTotalMetricValue() float64

func (*EndpointLoadMetricStats) ProtoMessage

func (*EndpointLoadMetricStats) ProtoMessage()

func (*EndpointLoadMetricStats) ProtoReflect

func (x *EndpointLoadMetricStats) ProtoReflect() protoreflect.Message

func (*EndpointLoadMetricStats) Reset

func (x *EndpointLoadMetricStats) Reset()

func (*EndpointLoadMetricStats) SetMetricName

func (x *EndpointLoadMetricStats) SetMetricName(v string)

func (*EndpointLoadMetricStats) SetNumRequestsFinishedWithMetric

func (x *EndpointLoadMetricStats) SetNumRequestsFinishedWithMetric(v uint64)

func (*EndpointLoadMetricStats) SetTotalMetricValue

func (x *EndpointLoadMetricStats) SetTotalMetricValue(v float64)

func (*EndpointLoadMetricStats) String

func (x *EndpointLoadMetricStats) String() string

type EndpointLoadMetricStats_builder

type EndpointLoadMetricStats_builder struct {

	// Name of the metric; may be empty.
	MetricName string
	// Number of calls that finished and included this metric.
	NumRequestsFinishedWithMetric uint64
	// Sum of metric values across all calls that finished with this metric for
	// load_reporting_interval.
	TotalMetricValue float64
	// contains filtered or unexported fields
}

func (EndpointLoadMetricStats_builder) Build

type Endpoint_HealthCheckConfig

type Endpoint_HealthCheckConfig struct {

	// Optional alternative health check port value.
	//
	// By default the health check address port of an upstream host is the same
	// as the host's serving address port. This provides an alternative health
	// check port. Setting this with a non-zero value allows an upstream host
	// to have different health check address port.
	PortValue uint32 `protobuf:"varint,1,opt,name=port_value,json=portValue,proto3" json:"port_value,omitempty"`
	// By default, the host header for L7 health checks is controlled by cluster level configuration
	// (see: :ref:`host <envoy_api_field_core.HealthCheck.HttpHealthCheck.host>` and
	// :ref:`authority <envoy_api_field_core.HealthCheck.GrpcHealthCheck.authority>`). Setting this
	// to a non-empty value allows overriding the cluster level configuration for a specific
	// endpoint.
	Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"`
	// contains filtered or unexported fields
}

The optional health check configuration.

func (*Endpoint_HealthCheckConfig) GetHostname

func (x *Endpoint_HealthCheckConfig) GetHostname() string

func (*Endpoint_HealthCheckConfig) GetPortValue

func (x *Endpoint_HealthCheckConfig) GetPortValue() uint32

func (*Endpoint_HealthCheckConfig) ProtoMessage

func (*Endpoint_HealthCheckConfig) ProtoMessage()

func (*Endpoint_HealthCheckConfig) ProtoReflect

func (*Endpoint_HealthCheckConfig) Reset

func (x *Endpoint_HealthCheckConfig) Reset()

func (*Endpoint_HealthCheckConfig) SetHostname

func (x *Endpoint_HealthCheckConfig) SetHostname(v string)

func (*Endpoint_HealthCheckConfig) SetPortValue

func (x *Endpoint_HealthCheckConfig) SetPortValue(v uint32)

func (*Endpoint_HealthCheckConfig) String

func (x *Endpoint_HealthCheckConfig) String() string

type Endpoint_HealthCheckConfig_builder

type Endpoint_HealthCheckConfig_builder struct {

	// Optional alternative health check port value.
	//
	// By default the health check address port of an upstream host is the same
	// as the host's serving address port. This provides an alternative health
	// check port. Setting this with a non-zero value allows an upstream host
	// to have different health check address port.
	PortValue uint32
	// By default, the host header for L7 health checks is controlled by cluster level configuration
	// (see: :ref:`host <envoy_api_field_core.HealthCheck.HttpHealthCheck.host>` and
	// :ref:`authority <envoy_api_field_core.HealthCheck.GrpcHealthCheck.authority>`). Setting this
	// to a non-empty value allows overriding the cluster level configuration for a specific
	// endpoint.
	Hostname string
	// contains filtered or unexported fields
}

func (Endpoint_HealthCheckConfig_builder) Build

type Endpoint_builder

type Endpoint_builder struct {

	// The upstream host address.
	//
	// .. attention::
	//
	//	The form of host address depends on the given cluster type. For STATIC or EDS,
	//	it is expected to be a direct IP address (or something resolvable by the
	//	specified :ref:`resolver <envoy_api_field_core.SocketAddress.resolver_name>`
	//	in the Address). For LOGICAL or STRICT DNS, it is expected to be hostname,
	//	and will be resolved via DNS.
	Address *core.Address
	// The optional health check configuration is used as configuration for the
	// health checker to contact the health checked host.
	//
	// .. attention::
	//
	//	This takes into effect only for upstream clusters with
	//	:ref:`active health checking <arch_overview_health_checking>` enabled.
	HealthCheckConfig *Endpoint_HealthCheckConfig
	// The hostname associated with this endpoint. This hostname is not used for routing or address
	// resolution. If provided, it will be associated with the endpoint, and can be used for features
	// that require a hostname, like
	// :ref:`auto_host_rewrite <envoy_api_field_route.RouteAction.auto_host_rewrite>`.
	Hostname string
	// contains filtered or unexported fields
}

func (Endpoint_builder) Build

func (b0 Endpoint_builder) Build() *Endpoint

type LbEndpoint

type LbEndpoint struct {

	// Upstream host identifier or a named reference.
	//
	// Types that are valid to be assigned to HostIdentifier:
	//
	//	*LbEndpoint_Endpoint
	//	*LbEndpoint_EndpointName
	HostIdentifier isLbEndpoint_HostIdentifier `protobuf_oneof:"host_identifier"`
	// Optional health status when known and supplied by EDS server.
	HealthStatus core.HealthStatus `` /* 134-byte string literal not displayed */
	// The endpoint metadata specifies values that may be used by the load
	// balancer to select endpoints in a cluster for a given request. The filter
	// name should be specified as *envoy.lb*. An example boolean key-value pair
	// is *canary*, providing the optional canary status of the upstream host.
	// This may be matched against in a route's
	// :ref:`RouteAction <envoy_api_msg_route.RouteAction>` metadata_match field
	// to subset the endpoints considered in cluster load balancing.
	Metadata *core.Metadata `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// The optional load balancing weight of the upstream host; at least 1.
	// Envoy uses the load balancing weight in some of the built in load
	// balancers. The load balancing weight for an endpoint is divided by the sum
	// of the weights of all endpoints in the endpoint's locality to produce a
	// percentage of traffic for the endpoint. This percentage is then further
	// weighted by the endpoint's locality's load balancing weight from
	// LocalityLbEndpoints. If unspecified, each host is presumed to have equal
	// weight in a locality. The sum of the weights of all endpoints in the
	// endpoint's locality must not exceed uint32_t maximal value (4294967295).
	LoadBalancingWeight *wrapperspb.UInt32Value `protobuf:"bytes,4,opt,name=load_balancing_weight,json=loadBalancingWeight,proto3" json:"load_balancing_weight,omitempty"`
	// contains filtered or unexported fields
}

An Endpoint that Envoy can route traffic to. [#next-free-field: 6]

func (*LbEndpoint) ClearEndpoint

func (x *LbEndpoint) ClearEndpoint()

func (*LbEndpoint) ClearEndpointName

func (x *LbEndpoint) ClearEndpointName()

func (*LbEndpoint) ClearHostIdentifier

func (x *LbEndpoint) ClearHostIdentifier()

func (*LbEndpoint) ClearLoadBalancingWeight

func (x *LbEndpoint) ClearLoadBalancingWeight()

func (*LbEndpoint) ClearMetadata

func (x *LbEndpoint) ClearMetadata()

func (*LbEndpoint) GetEndpoint

func (x *LbEndpoint) GetEndpoint() *Endpoint

func (*LbEndpoint) GetEndpointName

func (x *LbEndpoint) GetEndpointName() string

func (*LbEndpoint) GetHealthStatus

func (x *LbEndpoint) GetHealthStatus() core.HealthStatus

func (*LbEndpoint) GetHostIdentifier

func (x *LbEndpoint) GetHostIdentifier() isLbEndpoint_HostIdentifier

func (*LbEndpoint) GetLoadBalancingWeight

func (x *LbEndpoint) GetLoadBalancingWeight() *wrapperspb.UInt32Value

func (*LbEndpoint) GetMetadata

func (x *LbEndpoint) GetMetadata() *core.Metadata

func (*LbEndpoint) HasEndpoint

func (x *LbEndpoint) HasEndpoint() bool

func (*LbEndpoint) HasEndpointName

func (x *LbEndpoint) HasEndpointName() bool

func (*LbEndpoint) HasHostIdentifier

func (x *LbEndpoint) HasHostIdentifier() bool

func (*LbEndpoint) HasLoadBalancingWeight

func (x *LbEndpoint) HasLoadBalancingWeight() bool

func (*LbEndpoint) HasMetadata

func (x *LbEndpoint) HasMetadata() bool

func (*LbEndpoint) ProtoMessage

func (*LbEndpoint) ProtoMessage()

func (*LbEndpoint) ProtoReflect

func (x *LbEndpoint) ProtoReflect() protoreflect.Message

func (*LbEndpoint) Reset

func (x *LbEndpoint) Reset()

func (*LbEndpoint) SetEndpoint

func (x *LbEndpoint) SetEndpoint(v *Endpoint)

func (*LbEndpoint) SetEndpointName

func (x *LbEndpoint) SetEndpointName(v string)

func (*LbEndpoint) SetHealthStatus

func (x *LbEndpoint) SetHealthStatus(v core.HealthStatus)

func (*LbEndpoint) SetLoadBalancingWeight

func (x *LbEndpoint) SetLoadBalancingWeight(v *wrapperspb.UInt32Value)

func (*LbEndpoint) SetMetadata

func (x *LbEndpoint) SetMetadata(v *core.Metadata)

func (*LbEndpoint) String

func (x *LbEndpoint) String() string

func (*LbEndpoint) WhichHostIdentifier

func (x *LbEndpoint) WhichHostIdentifier() case_LbEndpoint_HostIdentifier

type LbEndpoint_Endpoint

type LbEndpoint_Endpoint struct {
	Endpoint *Endpoint `protobuf:"bytes,1,opt,name=endpoint,proto3,oneof"`
}

type LbEndpoint_EndpointName

type LbEndpoint_EndpointName struct {
	// [#not-implemented-hide:]
	EndpointName string `protobuf:"bytes,5,opt,name=endpoint_name,json=endpointName,proto3,oneof"`
}

type LbEndpoint_builder

type LbEndpoint_builder struct {

	// Fields of oneof HostIdentifier:
	Endpoint *Endpoint
	// [#not-implemented-hide:]
	EndpointName *string
	// -- end of HostIdentifier
	// Optional health status when known and supplied by EDS server.
	HealthStatus core.HealthStatus
	// The endpoint metadata specifies values that may be used by the load
	// balancer to select endpoints in a cluster for a given request. The filter
	// name should be specified as *envoy.lb*. An example boolean key-value pair
	// is *canary*, providing the optional canary status of the upstream host.
	// This may be matched against in a route's
	// :ref:`RouteAction <envoy_api_msg_route.RouteAction>` metadata_match field
	// to subset the endpoints considered in cluster load balancing.
	Metadata *core.Metadata
	// The optional load balancing weight of the upstream host; at least 1.
	// Envoy uses the load balancing weight in some of the built in load
	// balancers. The load balancing weight for an endpoint is divided by the sum
	// of the weights of all endpoints in the endpoint's locality to produce a
	// percentage of traffic for the endpoint. This percentage is then further
	// weighted by the endpoint's locality's load balancing weight from
	// LocalityLbEndpoints. If unspecified, each host is presumed to have equal
	// weight in a locality. The sum of the weights of all endpoints in the
	// endpoint's locality must not exceed uint32_t maximal value (4294967295).
	LoadBalancingWeight *wrapperspb.UInt32Value
	// contains filtered or unexported fields
}

func (LbEndpoint_builder) Build

func (b0 LbEndpoint_builder) Build() *LbEndpoint

type LocalityLbEndpoints

type LocalityLbEndpoints struct {

	// Identifies location of where the upstream hosts run.
	Locality *core.Locality `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"`
	// The group of endpoints belonging to the locality specified.
	LbEndpoints []*LbEndpoint `protobuf:"bytes,2,rep,name=lb_endpoints,json=lbEndpoints,proto3" json:"lb_endpoints,omitempty"`
	// Optional: Per priority/region/zone/sub_zone weight; at least 1. The load
	// balancing weight for a locality is divided by the sum of the weights of all
	// localities  at the same priority level to produce the effective percentage
	// of traffic for the locality. The sum of the weights of all localities at
	// the same priority level must not exceed uint32_t maximal value (4294967295).
	//
	// Locality weights are only considered when :ref:`locality weighted load
	// balancing <arch_overview_load_balancing_locality_weighted_lb>` is
	// configured. These weights are ignored otherwise. If no weights are
	// specified when locality weighted load balancing is enabled, the locality is
	// assigned no load.
	LoadBalancingWeight *wrapperspb.UInt32Value `protobuf:"bytes,3,opt,name=load_balancing_weight,json=loadBalancingWeight,proto3" json:"load_balancing_weight,omitempty"`
	// Optional: the priority for this LocalityLbEndpoints. If unspecified this will
	// default to the highest priority (0).
	//
	// Under usual circumstances, Envoy will only select endpoints for the highest
	// priority (0). In the event all endpoints for a particular priority are
	// unavailable/unhealthy, Envoy will fail over to selecting endpoints for the
	// next highest priority group.
	//
	// Priorities should range from 0 (highest) to N (lowest) without skipping.
	Priority uint32 `protobuf:"varint,5,opt,name=priority,proto3" json:"priority,omitempty"`
	// Optional: Per locality proximity value which indicates how close this
	// locality is from the source locality. This value only provides ordering
	// information (lower the value, closer it is to the source locality).
	// This will be consumed by load balancing schemes that need proximity order
	// to determine where to route the requests.
	// [#not-implemented-hide:]
	Proximity *wrapperspb.UInt32Value `protobuf:"bytes,6,opt,name=proximity,proto3" json:"proximity,omitempty"`
	// contains filtered or unexported fields
}

A group of endpoints belonging to a Locality. One can have multiple LocalityLbEndpoints for a locality, but this is generally only done if the different groups need to have different load balancing weights or different priorities. [#next-free-field: 7]

func (*LocalityLbEndpoints) ClearLoadBalancingWeight

func (x *LocalityLbEndpoints) ClearLoadBalancingWeight()

func (*LocalityLbEndpoints) ClearLocality

func (x *LocalityLbEndpoints) ClearLocality()

func (*LocalityLbEndpoints) ClearProximity

func (x *LocalityLbEndpoints) ClearProximity()

func (*LocalityLbEndpoints) GetLbEndpoints

func (x *LocalityLbEndpoints) GetLbEndpoints() []*LbEndpoint

func (*LocalityLbEndpoints) GetLoadBalancingWeight

func (x *LocalityLbEndpoints) GetLoadBalancingWeight() *wrapperspb.UInt32Value

func (*LocalityLbEndpoints) GetLocality

func (x *LocalityLbEndpoints) GetLocality() *core.Locality

func (*LocalityLbEndpoints) GetPriority

func (x *LocalityLbEndpoints) GetPriority() uint32

func (*LocalityLbEndpoints) GetProximity

func (x *LocalityLbEndpoints) GetProximity() *wrapperspb.UInt32Value

func (*LocalityLbEndpoints) HasLoadBalancingWeight

func (x *LocalityLbEndpoints) HasLoadBalancingWeight() bool

func (*LocalityLbEndpoints) HasLocality

func (x *LocalityLbEndpoints) HasLocality() bool

func (*LocalityLbEndpoints) HasProximity

func (x *LocalityLbEndpoints) HasProximity() bool

func (*LocalityLbEndpoints) ProtoMessage

func (*LocalityLbEndpoints) ProtoMessage()

func (*LocalityLbEndpoints) ProtoReflect

func (x *LocalityLbEndpoints) ProtoReflect() protoreflect.Message

func (*LocalityLbEndpoints) Reset

func (x *LocalityLbEndpoints) Reset()

func (*LocalityLbEndpoints) SetLbEndpoints

func (x *LocalityLbEndpoints) SetLbEndpoints(v []*LbEndpoint)

func (*LocalityLbEndpoints) SetLoadBalancingWeight

func (x *LocalityLbEndpoints) SetLoadBalancingWeight(v *wrapperspb.UInt32Value)

func (*LocalityLbEndpoints) SetLocality

func (x *LocalityLbEndpoints) SetLocality(v *core.Locality)

func (*LocalityLbEndpoints) SetPriority

func (x *LocalityLbEndpoints) SetPriority(v uint32)

func (*LocalityLbEndpoints) SetProximity

func (x *LocalityLbEndpoints) SetProximity(v *wrapperspb.UInt32Value)

func (*LocalityLbEndpoints) String

func (x *LocalityLbEndpoints) String() string

type LocalityLbEndpoints_builder

type LocalityLbEndpoints_builder struct {

	// Identifies location of where the upstream hosts run.
	Locality *core.Locality
	// The group of endpoints belonging to the locality specified.
	LbEndpoints []*LbEndpoint
	// Optional: Per priority/region/zone/sub_zone weight; at least 1. The load
	// balancing weight for a locality is divided by the sum of the weights of all
	// localities  at the same priority level to produce the effective percentage
	// of traffic for the locality. The sum of the weights of all localities at
	// the same priority level must not exceed uint32_t maximal value (4294967295).
	//
	// Locality weights are only considered when :ref:`locality weighted load
	// balancing <arch_overview_load_balancing_locality_weighted_lb>` is
	// configured. These weights are ignored otherwise. If no weights are
	// specified when locality weighted load balancing is enabled, the locality is
	// assigned no load.
	LoadBalancingWeight *wrapperspb.UInt32Value
	// Optional: the priority for this LocalityLbEndpoints. If unspecified this will
	// default to the highest priority (0).
	//
	// Under usual circumstances, Envoy will only select endpoints for the highest
	// priority (0). In the event all endpoints for a particular priority are
	// unavailable/unhealthy, Envoy will fail over to selecting endpoints for the
	// next highest priority group.
	//
	// Priorities should range from 0 (highest) to N (lowest) without skipping.
	Priority uint32
	// Optional: Per locality proximity value which indicates how close this
	// locality is from the source locality. This value only provides ordering
	// information (lower the value, closer it is to the source locality).
	// This will be consumed by load balancing schemes that need proximity order
	// to determine where to route the requests.
	// [#not-implemented-hide:]
	Proximity *wrapperspb.UInt32Value
	// contains filtered or unexported fields
}

func (LocalityLbEndpoints_builder) Build

type UpstreamEndpointStats

type UpstreamEndpointStats struct {

	// Upstream host address.
	Address *core.Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// Opaque and implementation dependent metadata of the
	// endpoint. Envoy will pass this directly to the management server.
	Metadata *structpb.Struct `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
	// The total number of requests successfully completed by the endpoints in the
	// locality. These include non-5xx responses for HTTP, where errors
	// originate at the client and the endpoint responded successfully. For gRPC,
	// the grpc-status values are those not covered by total_error_requests below.
	TotalSuccessfulRequests uint64 `` /* 133-byte string literal not displayed */
	// The total number of unfinished requests for this endpoint.
	TotalRequestsInProgress uint64 `` /* 135-byte string literal not displayed */
	// The total number of requests that failed due to errors at the endpoint.
	// For HTTP these are responses with 5xx status codes and for gRPC the
	// grpc-status values:
	//
	//   - DeadlineExceeded
	//   - Unimplemented
	//   - Internal
	//   - Unavailable
	//   - Unknown
	//   - DataLoss
	TotalErrorRequests uint64 `protobuf:"varint,4,opt,name=total_error_requests,json=totalErrorRequests,proto3" json:"total_error_requests,omitempty"`
	// The total number of requests that were issued to this endpoint
	// since the last report. A single TCP connection, HTTP or gRPC
	// request or stream is counted as one request.
	TotalIssuedRequests uint64 `protobuf:"varint,7,opt,name=total_issued_requests,json=totalIssuedRequests,proto3" json:"total_issued_requests,omitempty"`
	// Stats for multi-dimensional load balancing.
	LoadMetricStats []*EndpointLoadMetricStats `protobuf:"bytes,5,rep,name=load_metric_stats,json=loadMetricStats,proto3" json:"load_metric_stats,omitempty"`
	// contains filtered or unexported fields
}

[#not-implemented-hide:] Not configuration. TBD how to doc proto APIs. [#next-free-field: 8]

func (*UpstreamEndpointStats) ClearAddress

func (x *UpstreamEndpointStats) ClearAddress()

func (*UpstreamEndpointStats) ClearMetadata

func (x *UpstreamEndpointStats) ClearMetadata()

func (*UpstreamEndpointStats) GetAddress

func (x *UpstreamEndpointStats) GetAddress() *core.Address

func (*UpstreamEndpointStats) GetLoadMetricStats

func (x *UpstreamEndpointStats) GetLoadMetricStats() []*EndpointLoadMetricStats

func (*UpstreamEndpointStats) GetMetadata

func (x *UpstreamEndpointStats) GetMetadata() *structpb.Struct

func (*UpstreamEndpointStats) GetTotalErrorRequests

func (x *UpstreamEndpointStats) GetTotalErrorRequests() uint64

func (*UpstreamEndpointStats) GetTotalIssuedRequests

func (x *UpstreamEndpointStats) GetTotalIssuedRequests() uint64

func (*UpstreamEndpointStats) GetTotalRequestsInProgress

func (x *UpstreamEndpointStats) GetTotalRequestsInProgress() uint64

func (*UpstreamEndpointStats) GetTotalSuccessfulRequests

func (x *UpstreamEndpointStats) GetTotalSuccessfulRequests() uint64

func (*UpstreamEndpointStats) HasAddress

func (x *UpstreamEndpointStats) HasAddress() bool

func (*UpstreamEndpointStats) HasMetadata

func (x *UpstreamEndpointStats) HasMetadata() bool

func (*UpstreamEndpointStats) ProtoMessage

func (*UpstreamEndpointStats) ProtoMessage()

func (*UpstreamEndpointStats) ProtoReflect

func (x *UpstreamEndpointStats) ProtoReflect() protoreflect.Message

func (*UpstreamEndpointStats) Reset

func (x *UpstreamEndpointStats) Reset()

func (*UpstreamEndpointStats) SetAddress

func (x *UpstreamEndpointStats) SetAddress(v *core.Address)

func (*UpstreamEndpointStats) SetLoadMetricStats

func (x *UpstreamEndpointStats) SetLoadMetricStats(v []*EndpointLoadMetricStats)

func (*UpstreamEndpointStats) SetMetadata

func (x *UpstreamEndpointStats) SetMetadata(v *structpb.Struct)

func (*UpstreamEndpointStats) SetTotalErrorRequests

func (x *UpstreamEndpointStats) SetTotalErrorRequests(v uint64)

func (*UpstreamEndpointStats) SetTotalIssuedRequests

func (x *UpstreamEndpointStats) SetTotalIssuedRequests(v uint64)

func (*UpstreamEndpointStats) SetTotalRequestsInProgress

func (x *UpstreamEndpointStats) SetTotalRequestsInProgress(v uint64)

func (*UpstreamEndpointStats) SetTotalSuccessfulRequests

func (x *UpstreamEndpointStats) SetTotalSuccessfulRequests(v uint64)

func (*UpstreamEndpointStats) String

func (x *UpstreamEndpointStats) String() string

type UpstreamEndpointStats_builder

type UpstreamEndpointStats_builder struct {

	// Upstream host address.
	Address *core.Address
	// Opaque and implementation dependent metadata of the
	// endpoint. Envoy will pass this directly to the management server.
	Metadata *structpb.Struct
	// The total number of requests successfully completed by the endpoints in the
	// locality. These include non-5xx responses for HTTP, where errors
	// originate at the client and the endpoint responded successfully. For gRPC,
	// the grpc-status values are those not covered by total_error_requests below.
	TotalSuccessfulRequests uint64
	// The total number of unfinished requests for this endpoint.
	TotalRequestsInProgress uint64
	// The total number of requests that failed due to errors at the endpoint.
	// For HTTP these are responses with 5xx status codes and for gRPC the
	// grpc-status values:
	//
	//   - DeadlineExceeded
	//   - Unimplemented
	//   - Internal
	//   - Unavailable
	//   - Unknown
	//   - DataLoss
	TotalErrorRequests uint64
	// The total number of requests that were issued to this endpoint
	// since the last report. A single TCP connection, HTTP or gRPC
	// request or stream is counted as one request.
	TotalIssuedRequests uint64
	// Stats for multi-dimensional load balancing.
	LoadMetricStats []*EndpointLoadMetricStats
	// contains filtered or unexported fields
}

func (UpstreamEndpointStats_builder) Build

type UpstreamLocalityStats

type UpstreamLocalityStats struct {

	// Name of zone, region and optionally endpoint group these metrics were
	// collected from. Zone and region names could be empty if unknown.
	Locality *core.Locality `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"`
	// The total number of requests successfully completed by the endpoints in the
	// locality.
	TotalSuccessfulRequests uint64 `` /* 133-byte string literal not displayed */
	// The total number of unfinished requests
	TotalRequestsInProgress uint64 `` /* 135-byte string literal not displayed */
	// The total number of requests that failed due to errors at the endpoint,
	// aggregated over all endpoints in the locality.
	TotalErrorRequests uint64 `protobuf:"varint,4,opt,name=total_error_requests,json=totalErrorRequests,proto3" json:"total_error_requests,omitempty"`
	// The total number of requests that were issued by this Envoy since
	// the last report. This information is aggregated over all the
	// upstream endpoints in the locality.
	TotalIssuedRequests uint64 `protobuf:"varint,8,opt,name=total_issued_requests,json=totalIssuedRequests,proto3" json:"total_issued_requests,omitempty"`
	// Stats for multi-dimensional load balancing.
	LoadMetricStats []*EndpointLoadMetricStats `protobuf:"bytes,5,rep,name=load_metric_stats,json=loadMetricStats,proto3" json:"load_metric_stats,omitempty"`
	// Endpoint granularity stats information for this locality. This information
	// is populated if the Server requests it by setting
	// :ref:`LoadStatsResponse.report_endpoint_granularity<envoy_api_field_service.load_stats.v2.LoadStatsResponse.report_endpoint_granularity>`.
	UpstreamEndpointStats []*UpstreamEndpointStats `` /* 126-byte string literal not displayed */
	// [#not-implemented-hide:] The priority of the endpoint group these metrics
	// were collected from.
	Priority uint32 `protobuf:"varint,6,opt,name=priority,proto3" json:"priority,omitempty"`
	// contains filtered or unexported fields
}

These are stats Envoy reports to GLB every so often. Report frequency is defined by :ref:`LoadStatsResponse.load_reporting_interval<envoy_api_field_service.load_stats.v2.LoadStatsResponse.load_reporting_interval>`. Stats per upstream region/zone and optionally per subzone. [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs. [#next-free-field: 9]

func (*UpstreamLocalityStats) ClearLocality

func (x *UpstreamLocalityStats) ClearLocality()

func (*UpstreamLocalityStats) GetLoadMetricStats

func (x *UpstreamLocalityStats) GetLoadMetricStats() []*EndpointLoadMetricStats

func (*UpstreamLocalityStats) GetLocality

func (x *UpstreamLocalityStats) GetLocality() *core.Locality

func (*UpstreamLocalityStats) GetPriority

func (x *UpstreamLocalityStats) GetPriority() uint32

func (*UpstreamLocalityStats) GetTotalErrorRequests

func (x *UpstreamLocalityStats) GetTotalErrorRequests() uint64

func (*UpstreamLocalityStats) GetTotalIssuedRequests

func (x *UpstreamLocalityStats) GetTotalIssuedRequests() uint64

func (*UpstreamLocalityStats) GetTotalRequestsInProgress

func (x *UpstreamLocalityStats) GetTotalRequestsInProgress() uint64

func (*UpstreamLocalityStats) GetTotalSuccessfulRequests

func (x *UpstreamLocalityStats) GetTotalSuccessfulRequests() uint64

func (*UpstreamLocalityStats) GetUpstreamEndpointStats

func (x *UpstreamLocalityStats) GetUpstreamEndpointStats() []*UpstreamEndpointStats

func (*UpstreamLocalityStats) HasLocality

func (x *UpstreamLocalityStats) HasLocality() bool

func (*UpstreamLocalityStats) ProtoMessage

func (*UpstreamLocalityStats) ProtoMessage()

func (*UpstreamLocalityStats) ProtoReflect

func (x *UpstreamLocalityStats) ProtoReflect() protoreflect.Message

func (*UpstreamLocalityStats) Reset

func (x *UpstreamLocalityStats) Reset()

func (*UpstreamLocalityStats) SetLoadMetricStats

func (x *UpstreamLocalityStats) SetLoadMetricStats(v []*EndpointLoadMetricStats)

func (*UpstreamLocalityStats) SetLocality

func (x *UpstreamLocalityStats) SetLocality(v *core.Locality)

func (*UpstreamLocalityStats) SetPriority

func (x *UpstreamLocalityStats) SetPriority(v uint32)

func (*UpstreamLocalityStats) SetTotalErrorRequests

func (x *UpstreamLocalityStats) SetTotalErrorRequests(v uint64)

func (*UpstreamLocalityStats) SetTotalIssuedRequests

func (x *UpstreamLocalityStats) SetTotalIssuedRequests(v uint64)

func (*UpstreamLocalityStats) SetTotalRequestsInProgress

func (x *UpstreamLocalityStats) SetTotalRequestsInProgress(v uint64)

func (*UpstreamLocalityStats) SetTotalSuccessfulRequests

func (x *UpstreamLocalityStats) SetTotalSuccessfulRequests(v uint64)

func (*UpstreamLocalityStats) SetUpstreamEndpointStats

func (x *UpstreamLocalityStats) SetUpstreamEndpointStats(v []*UpstreamEndpointStats)

func (*UpstreamLocalityStats) String

func (x *UpstreamLocalityStats) String() string

type UpstreamLocalityStats_builder

type UpstreamLocalityStats_builder struct {

	// Name of zone, region and optionally endpoint group these metrics were
	// collected from. Zone and region names could be empty if unknown.
	Locality *core.Locality
	// The total number of requests successfully completed by the endpoints in the
	// locality.
	TotalSuccessfulRequests uint64
	// The total number of unfinished requests
	TotalRequestsInProgress uint64
	// The total number of requests that failed due to errors at the endpoint,
	// aggregated over all endpoints in the locality.
	TotalErrorRequests uint64
	// The total number of requests that were issued by this Envoy since
	// the last report. This information is aggregated over all the
	// upstream endpoints in the locality.
	TotalIssuedRequests uint64
	// Stats for multi-dimensional load balancing.
	LoadMetricStats []*EndpointLoadMetricStats
	// Endpoint granularity stats information for this locality. This information
	// is populated if the Server requests it by setting
	// :ref:`LoadStatsResponse.report_endpoint_granularity<envoy_api_field_service.load_stats.v2.LoadStatsResponse.report_endpoint_granularity>`.
	UpstreamEndpointStats []*UpstreamEndpointStats
	// [#not-implemented-hide:] The priority of the endpoint group these metrics
	// were collected from.
	Priority uint32
	// contains filtered or unexported fields
}

func (UpstreamLocalityStats_builder) Build

Jump to

Keyboard shortcuts

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