summaryrefslogtreecommitdiff
path: root/src/rpc/envoy.api.v2.endpoint.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/rpc/envoy.api.v2.endpoint.rs')
-rw-r--r--src/rpc/envoy.api.v2.endpoint.rs301
1 files changed, 0 insertions, 301 deletions
diff --git a/src/rpc/envoy.api.v2.endpoint.rs b/src/rpc/envoy.api.v2.endpoint.rs
deleted file mode 100644
index 9599351d..00000000
--- a/src/rpc/envoy.api.v2.endpoint.rs
+++ /dev/null
@@ -1,301 +0,0 @@
-// @generated
-// This file is @generated by prost-build.
-// \[#protodoc-title: Endpoints\]
-
-/// Upstream host identifier.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct Endpoint {
- /// 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.
- #[prost(message, optional, tag="1")]
- pub address: ::core::option::Option<super::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.
- #[prost(message, optional, tag="2")]
- pub health_check_config: ::core::option::Option<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>`.
- #[prost(string, tag="3")]
- pub hostname: ::prost::alloc::string::String,
-}
-/// Nested message and enum types in `Endpoint`.
-pub mod endpoint {
- /// The optional health check configuration.
- #[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
- pub struct HealthCheckConfig {
- /// 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.
- #[prost(uint32, tag="1")]
- pub port_value: u32,
- /// 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.
- #[prost(string, tag="2")]
- pub hostname: ::prost::alloc::string::String,
- }
-}
-/// An Endpoint that Envoy can route traffic to.
-/// \[#next-free-field: 6\]
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct LbEndpoint {
- /// Optional health status when known and supplied by EDS server.
- #[prost(enumeration="super::core::HealthStatus", tag="2")]
- pub health_status: i32,
- /// 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.
- #[prost(message, optional, tag="3")]
- pub metadata: ::core::option::Option<super::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).
- #[prost(message, optional, tag="4")]
- pub load_balancing_weight: ::core::option::Option<super::super::super::super::google::protobuf::UInt32Value>,
- /// Upstream host identifier or a named reference.
- #[prost(oneof="lb_endpoint::HostIdentifier", tags="1, 5")]
- pub host_identifier: ::core::option::Option<lb_endpoint::HostIdentifier>,
-}
-/// Nested message and enum types in `LbEndpoint`.
-pub mod lb_endpoint {
- /// Upstream host identifier or a named reference.
- #[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Oneof)]
- pub enum HostIdentifier {
- #[prost(message, tag="1")]
- Endpoint(super::Endpoint),
- /// \[#not-implemented-hide:\]
- #[prost(string, tag="5")]
- EndpointName(::prost::alloc::string::String),
- }
-}
-/// 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\]
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct LocalityLbEndpoints {
- /// Identifies location of where the upstream hosts run.
- #[prost(message, optional, tag="1")]
- pub locality: ::core::option::Option<super::core::Locality>,
- /// The group of endpoints belonging to the locality specified.
- #[prost(message, repeated, tag="2")]
- pub lb_endpoints: ::prost::alloc::vec::Vec<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.
- #[prost(message, optional, tag="3")]
- pub load_balancing_weight: ::core::option::Option<super::super::super::super::google::protobuf::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.
- #[prost(uint32, tag="5")]
- pub priority: u32,
- /// 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:\]
- #[prost(message, optional, tag="6")]
- pub proximity: ::core::option::Option<super::super::super::super::google::protobuf::UInt32Value>,
-}
-/// 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\]
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct UpstreamLocalityStats {
- /// Name of zone, region and optionally endpoint group these metrics were
- /// collected from. Zone and region names could be empty if unknown.
- #[prost(message, optional, tag="1")]
- pub locality: ::core::option::Option<super::core::Locality>,
- /// The total number of requests successfully completed by the endpoints in the
- /// locality.
- #[prost(uint64, tag="2")]
- pub total_successful_requests: u64,
- /// The total number of unfinished requests
- #[prost(uint64, tag="3")]
- pub total_requests_in_progress: u64,
- /// The total number of requests that failed due to errors at the endpoint,
- /// aggregated over all endpoints in the locality.
- #[prost(uint64, tag="4")]
- pub total_error_requests: u64,
- /// 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.
- #[prost(uint64, tag="8")]
- pub total_issued_requests: u64,
- /// Stats for multi-dimensional load balancing.
- #[prost(message, repeated, tag="5")]
- pub load_metric_stats: ::prost::alloc::vec::Vec<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>`.
- #[prost(message, repeated, tag="7")]
- pub upstream_endpoint_stats: ::prost::alloc::vec::Vec<UpstreamEndpointStats>,
- /// \[#not-implemented-hide:\] The priority of the endpoint group these metrics
- /// were collected from.
- #[prost(uint32, tag="6")]
- pub priority: u32,
-}
-/// \[#not-implemented-hide:\] Not configuration. TBD how to doc proto APIs.
-/// \[#next-free-field: 8\]
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct UpstreamEndpointStats {
- /// Upstream host address.
- #[prost(message, optional, tag="1")]
- pub address: ::core::option::Option<super::core::Address>,
- /// Opaque and implementation dependent metadata of the
- /// endpoint. Envoy will pass this directly to the management server.
- #[prost(message, optional, tag="6")]
- pub metadata: ::core::option::Option<super::super::super::super::google::protobuf::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.
- #[prost(uint64, tag="2")]
- pub total_successful_requests: u64,
- /// The total number of unfinished requests for this endpoint.
- #[prost(uint64, tag="3")]
- pub total_requests_in_progress: u64,
- /// 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
- #[prost(uint64, tag="4")]
- pub total_error_requests: u64,
- /// 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.
- #[prost(uint64, tag="7")]
- pub total_issued_requests: u64,
- /// Stats for multi-dimensional load balancing.
- #[prost(message, repeated, tag="5")]
- pub load_metric_stats: ::prost::alloc::vec::Vec<EndpointLoadMetricStats>,
-}
-/// \[#not-implemented-hide:\] Not configuration. TBD how to doc proto APIs.
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct EndpointLoadMetricStats {
- /// Name of the metric; may be empty.
- #[prost(string, tag="1")]
- pub metric_name: ::prost::alloc::string::String,
- /// Number of calls that finished and included this metric.
- #[prost(uint64, tag="2")]
- pub num_requests_finished_with_metric: u64,
- /// Sum of metric values across all calls that finished with this metric for
- /// load_reporting_interval.
- #[prost(double, tag="3")]
- pub total_metric_value: f64,
-}
-/// 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\]
-#[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
-pub struct ClusterStats {
- /// The name of the cluster.
- #[prost(string, tag="1")]
- pub cluster_name: ::prost::alloc::string::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.
- #[prost(string, tag="6")]
- pub cluster_service_name: ::prost::alloc::string::String,
- /// Need at least one.
- #[prost(message, repeated, tag="2")]
- pub upstream_locality_stats: ::prost::alloc::vec::Vec<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.
- #[prost(uint64, tag="3")]
- pub total_dropped_requests: u64,
- /// Information about deliberately dropped requests for each category specified
- /// in the DropOverload policy.
- #[prost(message, repeated, tag="5")]
- pub dropped_requests: ::prost::alloc::vec::Vec<cluster_stats::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*.
- #[prost(message, optional, tag="4")]
- pub load_report_interval: ::core::option::Option<super::super::super::super::google::protobuf::Duration>,
-}
-/// Nested message and enum types in `ClusterStats`.
-pub mod cluster_stats {
- #[allow(clippy::derive_partial_eq_without_eq)]
-#[derive(Clone, PartialEq, ::prost::Message)]
- pub struct DroppedRequests {
- /// Identifier for the policy specifying the drop.
- #[prost(string, tag="1")]
- pub category: ::prost::alloc::string::String,
- /// Total number of deliberately dropped requests for the category.
- #[prost(uint64, tag="2")]
- pub dropped_count: u64,
- }
-}
-// @@protoc_insertion_point(module)