Get desktop application:
View/edit binary Protocol Buffers messages
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]
Used in:
The name of the cluster.
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.
Need at least one.
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.
Information about deliberately dropped requests for each category specified in the DropOverload policy.
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*.
Used in:
Identifier for the policy specifying the drop.
Total number of deliberately dropped requests for the category.
Upstream host identifier.
Used in:
, , ,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.
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.
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>`.
The optional health check configuration.
Used in:
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.
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.
[#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
Used in:
,Name of the metric; may be empty.
Number of calls that finished and included this metric.
Sum of metric values across all calls that finished with this metric for load_reporting_interval.
An Endpoint that Envoy can route traffic to. [#next-free-field: 6]
Used in:
Upstream host identifier or a named reference.
[#not-implemented-hide:]
Optional health status when known and supplied by EDS server.
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.
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).
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]
Used in:
Identifies location of where the upstream hosts run.
The group of endpoints belonging to the locality specified.
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.
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.
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:]
[#not-implemented-hide:] Not configuration. TBD how to doc proto APIs. [#next-free-field: 8]
Used in:
Upstream host address.
Opaque and implementation dependent metadata of the endpoint. Envoy will pass this directly to the management server.
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.
The total number of unfinished requests for this endpoint.
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
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.
Stats for multi-dimensional load balancing.
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]
Used in:
Name of zone, region and optionally endpoint group these metrics were collected from. Zone and region names could be empty if unknown.
The total number of requests successfully completed by the endpoints in the locality.
The total number of unfinished requests
The total number of requests that failed due to errors at the endpoint, aggregated over all endpoints in the locality.
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.
Stats for multi-dimensional load balancing.
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>`.
[#not-implemented-hide:] The priority of the endpoint group these metrics were collected from.