1// THIS FILE IS DEPRECATED
2// Users should instead use the corresponding proto in the xds tree.
3// No new changes will be accepted here.
4
5syntax = "proto3";
6
7package udpa.data.orca.v1;
8
9option java_outer_classname = "OrcaLoadReportProto";
10option java_multiple_files = true;
11option java_package = "com.github.udpa.udpa.data.orca.v1";
12option go_package = "github.com/cncf/xds/go/udpa/data/orca/v1";
13
14import "validate/validate.proto";
15
16// See section `ORCA load report format` of the design document in
17// :ref:`https://github.com/envoyproxy/envoy/issues/6614`.
18
19message OrcaLoadReport {
20  // CPU utilization expressed as a fraction of available CPU resources. This
21  // should be derived from the latest sample or measurement.
22  double cpu_utilization = 1 [(validate.rules).double.gte = 0, (validate.rules).double.lte = 1];
23
24  // Memory utilization expressed as a fraction of available memory
25  // resources. This should be derived from the latest sample or measurement.
26  double mem_utilization = 2 [(validate.rules).double.gte = 0, (validate.rules).double.lte = 1];
27
28  // Total RPS being served by an endpoint. This should cover all services that an endpoint is
29  // responsible for.
30  uint64 rps = 3;
31
32  // Application specific requests costs. Each value is an absolute cost (e.g. 3487 bytes of
33  // storage) associated with the request.
34  map<string, double> request_cost = 4;
35
36  // Resource utilization values. Each value is expressed as a fraction of total resources
37  // available, derived from the latest sample or measurement.
38  map<string, double> utilization = 5
39      [(validate.rules).map.values.double.gte = 0, (validate.rules).map.values.double.lte = 1];
40}
41