Load reporting service documentation (#10962)

Signed-off-by: kathan24 <kshah@lyft.com>

Mirrored from https://github.com/envoyproxy/envoy @ 570f7ac553e64206193d64952bf8d4a72b76e49c
master-ci-test
data-plane-api(CircleCI) 5 years ago
parent b4cdc2be93
commit 0c2158854b
  1. 9
      envoy/config/endpoint/v3/load_report.proto
  2. 13
      envoy/service/load_stats/v3/lrs.proto

@ -17,11 +17,11 @@ option java_outer_classname = "LoadReportProto";
option java_multiple_files = true;
option (udpa.annotations.file_status).package_version_status = ACTIVE;
// These are stats Envoy reports to GLB every so often. Report frequency is
// defined by
// [#protodoc-title: Load Report]
// These are stats Envoy reports to the management server at a frequency defined by
// :ref:`LoadStatsResponse.load_reporting_interval<envoy_api_field_service.load_stats.v3.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]
message UpstreamLocalityStats {
option (udpa.annotations.versioning).previous_message_type =
@ -60,7 +60,6 @@ message UpstreamLocalityStats {
uint32 priority = 6;
}
// [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
// [#next-free-field: 8]
message UpstreamEndpointStats {
option (udpa.annotations.versioning).previous_message_type =
@ -103,7 +102,6 @@ message UpstreamEndpointStats {
repeated EndpointLoadMetricStats load_metric_stats = 5;
}
// [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
message EndpointLoadMetricStats {
option (udpa.annotations.versioning).previous_message_type =
"envoy.api.v2.endpoint.EndpointLoadMetricStats";
@ -121,7 +119,6 @@ message EndpointLoadMetricStats {
// Per cluster load stats. Envoy reports these stats a management server in a
// :ref:`LoadStatsRequest<envoy_api_msg_service.load_stats.v3.LoadStatsRequest>`
// [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
// Next ID: 7
// [#next-free-field: 7]
message ClusterStats {

@ -17,7 +17,15 @@ option java_multiple_files = true;
option java_generic_services = true;
option (udpa.annotations.file_status).package_version_status = ACTIVE;
// [#protodoc-title: Load reporting service]
// [#protodoc-title: Load Reporting service (LRS)]
// Load Reporting Service is an Envoy API to emit load reports. Envoy will initiate a bi-directional
// stream with a management server. Upon connecting, the management server can send a
// :ref:`LoadStatsResponse <envoy_api_msg_service.load_stats.v3.LoadStatsResponse>` to a node it is
// interested in getting the load reports for. Envoy in this node will start sending
// :ref:`LoadStatsRequest <envoy_api_msg_service.load_stats.v3.LoadStatsRequest>`. This is done periodically
// based on the :ref:`load reporting interval <envoy_api_field_service.load_stats.v3.LoadStatsResponse.load_reporting_interval>`
// For details, take a look at the :ref:`Load Reporting Service sandbox example <install_sandboxes_load_reporting_service>`.
service LoadReportingService {
// Advanced API to allow for multi-dimensional load balancing by remote
@ -53,7 +61,6 @@ service LoadReportingService {
}
// A load report Envoy sends to the management server.
// [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
message LoadStatsRequest {
option (udpa.annotations.versioning).previous_message_type =
"envoy.service.load_stats.v2.LoadStatsRequest";
@ -67,7 +74,6 @@ message LoadStatsRequest {
// The management server sends envoy a LoadStatsResponse with all clusters it
// is interested in learning load stats about.
// [#not-implemented-hide:] Not configuration. TBD how to doc proto APIs.
message LoadStatsResponse {
option (udpa.annotations.versioning).previous_message_type =
"envoy.service.load_stats.v2.LoadStatsResponse";
@ -82,6 +88,7 @@ message LoadStatsResponse {
bool send_all_clusters = 4;
// The minimum interval of time to collect stats over. This is only a minimum for two reasons:
//
// 1. There may be some delay from when the timer fires until stats sampling occurs.
// 2. For clusters that were already feature in the previous *LoadStatsResponse*, any traffic
// that is observed in between the corresponding previous *LoadStatsRequest* and this

Loading…
Cancel
Save