@devvit/protos 0.11.17-next-2025-05-29-91b3cf49f.0 → 0.11.17-next-2025-05-29-de9726085.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/package.json +4 -4
  2. package/schema/.snootobuf/deps/google/api/annotations.proto +1 -1
  3. package/schema/.snootobuf/deps/google/api/auth.proto +75 -19
  4. package/schema/.snootobuf/deps/google/api/backend.proto +142 -8
  5. package/schema/.snootobuf/deps/google/api/billing.proto +23 -13
  6. package/schema/.snootobuf/deps/google/api/client.proto +333 -1
  7. package/schema/.snootobuf/deps/google/api/config_change.proto +2 -3
  8. package/schema/.snootobuf/deps/google/api/consumer.proto +1 -2
  9. package/schema/.snootobuf/deps/google/api/context.proto +34 -5
  10. package/schema/.snootobuf/deps/google/api/control.proto +15 -7
  11. package/schema/.snootobuf/deps/google/api/distribution.proto +5 -5
  12. package/schema/.snootobuf/deps/google/api/documentation.proto +27 -16
  13. package/schema/.snootobuf/deps/google/api/endpoint.proto +23 -25
  14. package/schema/.snootobuf/deps/google/api/field_behavior.proto +23 -3
  15. package/schema/.snootobuf/deps/google/api/http.proto +173 -120
  16. package/schema/.snootobuf/deps/google/api/httpbody.proto +11 -6
  17. package/schema/.snootobuf/deps/google/api/label.proto +1 -2
  18. package/schema/.snootobuf/deps/google/api/launch_stage.proto +10 -5
  19. package/schema/.snootobuf/deps/google/api/log.proto +1 -2
  20. package/schema/.snootobuf/deps/google/api/logging.proto +6 -8
  21. package/schema/.snootobuf/deps/google/api/metric.proto +116 -40
  22. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +38 -24
  23. package/schema/.snootobuf/deps/google/api/monitoring.proto +43 -25
  24. package/schema/.snootobuf/deps/google/api/quota.proto +20 -95
  25. package/schema/.snootobuf/deps/google/api/resource.proto +18 -74
  26. package/schema/.snootobuf/deps/google/api/routing.proto +1 -1
  27. package/schema/.snootobuf/deps/google/api/service.proto +54 -38
  28. package/schema/.snootobuf/deps/google/api/source_info.proto +1 -2
  29. package/schema/.snootobuf/deps/google/api/system_parameter.proto +3 -3
  30. package/schema/.snootobuf/deps/google/api/usage.proto +9 -5
@@ -1,4 +1,4 @@
1
- // Copyright 2019 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -11,7 +11,6 @@
11
11
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
12
  // See the License for the specific language governing permissions and
13
13
  // limitations under the License.
14
- //
15
14
 
16
15
  syntax = "proto3";
17
16
 
@@ -24,11 +23,17 @@ option java_package = "com.google.api";
24
23
  option objc_class_prefix = "GAPI";
25
24
 
26
25
  // The launch stage as defined by [Google Cloud Platform
27
- // Launch Stages](http://cloud.google.com/terms/launch-stages).
26
+ // Launch Stages](https://cloud.google.com/terms/launch-stages).
28
27
  enum LaunchStage {
29
28
  // Do not use this default value.
30
29
  LAUNCH_STAGE_UNSPECIFIED = 0;
31
30
 
31
+ // The feature is not yet implemented. Users can not use it.
32
+ UNIMPLEMENTED = 6;
33
+
34
+ // Prelaunch features are hidden from users and are only visible internally.
35
+ PRELAUNCH = 7;
36
+
32
37
  // Early Access features are limited to a closed group of testers. To use
33
38
  // these features, you must sign up in advance and sign a Trusted Tester
34
39
  // agreement (which includes confidentiality provisions). These features may
@@ -40,7 +45,7 @@ enum LaunchStage {
40
45
  // for widespread use. By Alpha, all significant design issues are resolved
41
46
  // and we are in the process of verifying functionality. Alpha customers
42
47
  // need to apply for access, agree to applicable terms, and have their
43
- // projects whitelisted. Alpha releases dont have to be feature complete,
48
+ // projects allowlisted. Alpha releases don't have to be feature complete,
44
49
  // no SLAs are provided, and there are no technical support obligations, but
45
50
  // they will be far enough along that customers can actually use them in
46
51
  // test environments or for limited-use tests -- just like they would in
@@ -59,7 +64,7 @@ enum LaunchStage {
59
64
  GA = 4;
60
65
 
61
66
  // Deprecated features are scheduled to be shut down and removed. For more
62
- // information, see the Deprecation Policy section of our [Terms of
67
+ // information, see the "Deprecation Policy" section of our [Terms of
63
68
  // Service](https://cloud.google.com/terms/)
64
69
  // and the [Google Cloud Platform Subject to the Deprecation
65
70
  // Policy](https://cloud.google.com/terms/deprecation) documentation.
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -24,7 +24,6 @@ option java_outer_classname = "LogProto";
24
24
  option java_package = "com.google.api";
25
25
  option objc_class_prefix = "GAPI";
26
26
 
27
-
28
27
  // A description of a log type. Example in YAML format:
29
28
  //
30
29
  // - name: library.googleapis.com/activity_history
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -16,15 +16,12 @@ syntax = "proto3";
16
16
 
17
17
  package google.api;
18
18
 
19
- import "google/api/annotations.proto";
20
-
21
19
  option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
22
20
  option java_multiple_files = true;
23
21
  option java_outer_classname = "LoggingProto";
24
22
  option java_package = "com.google.api";
25
23
  option objc_class_prefix = "GAPI";
26
24
 
27
-
28
25
  // Logging configuration of the service.
29
26
  //
30
27
  // The following example shows how to configure logs to be sent to the
@@ -59,13 +56,14 @@ message Logging {
59
56
  // or the consumer project).
60
57
  message LoggingDestination {
61
58
  // The monitored resource type. The type must be defined in the
62
- // [Service.monitored_resources][google.api.Service.monitored_resources] section.
59
+ // [Service.monitored_resources][google.api.Service.monitored_resources]
60
+ // section.
63
61
  string monitored_resource = 3;
64
62
 
65
63
  // Names of the logs to be sent to this destination. Each name must
66
- // be defined in the [Service.logs][google.api.Service.logs] section. If the log name is
67
- // not a domain scoped name, it will be automatically prefixed with
68
- // the service name followed by "/".
64
+ // be defined in the [Service.logs][google.api.Service.logs] section. If the
65
+ // log name is not a domain scoped name, it will be automatically prefixed
66
+ // with the service name followed by "/".
69
67
  repeated string logs = 1;
70
68
  }
71
69
 
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -17,6 +17,8 @@ syntax = "proto3";
17
17
  package google.api;
18
18
 
19
19
  import "google/api/label.proto";
20
+ import "google/api/launch_stage.proto";
21
+ import "google/protobuf/duration.proto";
20
22
 
21
23
  option go_package = "google.golang.org/genproto/googleapis/api/metric;metric";
22
24
  option java_multiple_files = true;
@@ -24,12 +26,14 @@ option java_outer_classname = "MetricProto";
24
26
  option java_package = "com.google.api";
25
27
  option objc_class_prefix = "GAPI";
26
28
 
27
-
28
29
  // Defines a metric type and its schema. Once a metric descriptor is created,
29
30
  // deleting or altering it stops data collection and makes the metric type's
30
31
  // existing data unusable.
32
+ //
31
33
  message MetricDescriptor {
32
34
  // The kind of measurement. It describes how the data is reported.
35
+ // For information on setting the start time and end time based on
36
+ // the MetricKind, see [TimeInterval][google.monitoring.v3.TimeInterval].
33
37
  enum MetricKind {
34
38
  // Do not use this default value.
35
39
  METRIC_KIND_UNSPECIFIED = 0;
@@ -74,15 +78,35 @@ message MetricDescriptor {
74
78
  MONEY = 6;
75
79
  }
76
80
 
81
+ // Additional annotations that can be used to guide the usage of a metric.
82
+ message MetricDescriptorMetadata {
83
+ // Deprecated. Must use the
84
+ // [MetricDescriptor.launch_stage][google.api.MetricDescriptor.launch_stage]
85
+ // instead.
86
+ LaunchStage launch_stage = 1 [deprecated = true];
87
+
88
+ // The sampling period of metric data points. For metrics which are written
89
+ // periodically, consecutive data points are stored at this time interval,
90
+ // excluding data loss due to errors. Metrics with a higher granularity have
91
+ // a smaller sampling period.
92
+ google.protobuf.Duration sample_period = 2;
93
+
94
+ // The delay of data points caused by ingestion. Data points older than this
95
+ // age are guaranteed to be ingested and available to be read, excluding
96
+ // data loss due to errors.
97
+ google.protobuf.Duration ingest_delay = 3;
98
+ }
99
+
77
100
  // The resource name of the metric descriptor.
78
101
  string name = 1;
79
102
 
80
103
  // The metric type, including its DNS name prefix. The type is not
81
- // URL-encoded. All user-defined custom metric types have the DNS name
82
- // `custom.googleapis.com`. Metric types should use a natural hierarchical
83
- // grouping. For example:
104
+ // URL-encoded. All user-defined metric types have the DNS name
105
+ // `custom.googleapis.com` or `external.googleapis.com`. Metric types should
106
+ // use a natural hierarchical grouping. For example:
84
107
  //
85
108
  // "custom.googleapis.com/invoice/paid/amount"
109
+ // "external.googleapis.com/prometheus/up"
86
110
  // "appengine.googleapis.com/http/server/response_latencies"
87
111
  string type = 8;
88
112
 
@@ -102,10 +126,28 @@ message MetricDescriptor {
102
126
  // Some combinations of `metric_kind` and `value_type` might not be supported.
103
127
  ValueType value_type = 4;
104
128
 
105
- // The unit in which the metric value is reported. It is only applicable
106
- // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The
107
- // supported units are a subset of [The Unified Code for Units of
108
- // Measure](http://unitsofmeasure.org/ucum.html) standard:
129
+ // The units in which the metric value is reported. It is only applicable
130
+ // if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The `unit`
131
+ // defines the representation of the stored metric values.
132
+ //
133
+ // Different systems might scale the values to be more easily displayed (so a
134
+ // value of `0.02kBy` _might_ be displayed as `20By`, and a value of
135
+ // `3523kBy` _might_ be displayed as `3.5MBy`). However, if the `unit` is
136
+ // `kBy`, then the value of the metric is always in thousands of bytes, no
137
+ // matter how it might be displayed.
138
+ //
139
+ // If you want a custom metric to record the exact number of CPU-seconds used
140
+ // by a job, you can create an `INT64 CUMULATIVE` metric whose `unit` is
141
+ // `s{CPU}` (or equivalently `1s{CPU}` or just `s`). If the job uses 12,005
142
+ // CPU-seconds, then the value is written as `12005`.
143
+ //
144
+ // Alternatively, if you want a custom metric to record data in a more
145
+ // granular way, you can create a `DOUBLE CUMULATIVE` metric whose `unit` is
146
+ // `ks{CPU}`, and then write the value `12.005` (which is `12005/1000`),
147
+ // or use `Kis{CPU}` and write `11.723` (which is `12005/1024`).
148
+ //
149
+ // The supported units are a subset of [The Unified Code for Units of
150
+ // Measure](https://unitsofmeasure.org/ucum.html) standard:
109
151
  //
110
152
  // **Basic units (UNIT)**
111
153
  //
@@ -115,36 +157,44 @@ message MetricDescriptor {
115
157
  // * `min` minute
116
158
  // * `h` hour
117
159
  // * `d` day
160
+ // * `1` dimensionless
118
161
  //
119
162
  // **Prefixes (PREFIX)**
120
163
  //
121
- // * `k` kilo (10**3)
122
- // * `M` mega (10**6)
123
- // * `G` giga (10**9)
124
- // * `T` tera (10**12)
125
- // * `P` peta (10**15)
126
- // * `E` exa (10**18)
127
- // * `Z` zetta (10**21)
128
- // * `Y` yotta (10**24)
129
- // * `m` milli (10**-3)
130
- // * `u` micro (10**-6)
131
- // * `n` nano (10**-9)
132
- // * `p` pico (10**-12)
133
- // * `f` femto (10**-15)
134
- // * `a` atto (10**-18)
135
- // * `z` zepto (10**-21)
136
- // * `y` yocto (10**-24)
137
- // * `Ki` kibi (2**10)
138
- // * `Mi` mebi (2**20)
139
- // * `Gi` gibi (2**30)
140
- // * `Ti` tebi (2**40)
164
+ // * `k` kilo (10^3)
165
+ // * `M` mega (10^6)
166
+ // * `G` giga (10^9)
167
+ // * `T` tera (10^12)
168
+ // * `P` peta (10^15)
169
+ // * `E` exa (10^18)
170
+ // * `Z` zetta (10^21)
171
+ // * `Y` yotta (10^24)
172
+ //
173
+ // * `m` milli (10^-3)
174
+ // * `u` micro (10^-6)
175
+ // * `n` nano (10^-9)
176
+ // * `p` pico (10^-12)
177
+ // * `f` femto (10^-15)
178
+ // * `a` atto (10^-18)
179
+ // * `z` zepto (10^-21)
180
+ // * `y` yocto (10^-24)
181
+ //
182
+ // * `Ki` kibi (2^10)
183
+ // * `Mi` mebi (2^20)
184
+ // * `Gi` gibi (2^30)
185
+ // * `Ti` tebi (2^40)
186
+ // * `Pi` pebi (2^50)
141
187
  //
142
188
  // **Grammar**
143
189
  //
144
190
  // The grammar also includes these connectors:
145
191
  //
146
- // * `/` division (as an infix operator, e.g. `1/s`).
147
- // * `.` multiplication (as an infix operator, e.g. `GBy.d`)
192
+ // * `/` division or ratio (as an infix operator). For examples,
193
+ // `kBy/{email}` or `MiBy/10ms` (although you should almost never
194
+ // have `/s` in a metric `unit`; rates should always be computed at
195
+ // query time from the underlying cumulative or delta value).
196
+ // * `.` multiplication or composition (as an infix operator). For
197
+ // examples, `GBy.d` or `k{watt}.h`.
148
198
  //
149
199
  // The grammar for a unit is as follows:
150
200
  //
@@ -159,14 +209,25 @@ message MetricDescriptor {
159
209
  //
160
210
  // Notes:
161
211
  //
162
- // * `Annotation` is just a comment if it follows a `UNIT` and is
163
- // equivalent to `1` if it is used alone. For examples,
164
- // `{requests}/s == 1/s`, `By{transmitted}/s == By/s`.
212
+ // * `Annotation` is just a comment if it follows a `UNIT`. If the annotation
213
+ // is used alone, then the unit is equivalent to `1`. For examples,
214
+ // `{request}/s == 1/s`, `By{transmitted}/s == By/s`.
165
215
  // * `NAME` is a sequence of non-blank printable ASCII characters not
166
- // containing '{' or '}'.
167
- // * `1` represents dimensionless value 1, such as in `1/s`.
168
- // * `%` represents dimensionless value 1/100, and annotates values giving
169
- // a percentage.
216
+ // containing `{` or `}`.
217
+ // * `1` represents a unitary [dimensionless
218
+ // unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such
219
+ // as in `1/s`. It is typically used when none of the basic units are
220
+ // appropriate. For example, "new users per day" can be represented as
221
+ // `1/d` or `{new-users}/d` (and a metric value `5` would mean "5 new
222
+ // users). Alternatively, "thousands of page views per day" would be
223
+ // represented as `1000/d` or `k1/d` or `k{page_views}/d` (and a metric
224
+ // value of `5.3` would mean "5300 page views per day").
225
+ // * `%` represents dimensionless value of 1/100, and annotates values giving
226
+ // a percentage (so the metric values are typically in the range of 0..100,
227
+ // and a metric value `3` means "3 percent").
228
+ // * `10^2.%` indicates a metric contains a ratio, typically in the range
229
+ // 0..1, that will be multiplied by 100 and displayed as a percentage
230
+ // (so a metric value `0.03` means "3 percent").
170
231
  string unit = 5;
171
232
 
172
233
  // A detailed description of the metric, which can be used in documentation.
@@ -177,13 +238,28 @@ message MetricDescriptor {
177
238
  // This field is optional but it is recommended to be set for any metrics
178
239
  // associated with user-visible concepts, such as Quota.
179
240
  string display_name = 7;
241
+
242
+ // Optional. Metadata which can be used to guide usage of the metric.
243
+ MetricDescriptorMetadata metadata = 10;
244
+
245
+ // Optional. The launch stage of the metric definition.
246
+ LaunchStage launch_stage = 12;
247
+
248
+ // Read-only. If present, then a [time
249
+ // series][google.monitoring.v3.TimeSeries], which is identified partially by
250
+ // a metric type and a
251
+ // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor], that
252
+ // is associated with this metric type can only be associated with one of the
253
+ // monitored resource types listed here.
254
+ repeated string monitored_resource_types = 13;
180
255
  }
181
256
 
182
257
  // A specific metric, identified by specifying values for all of the
183
258
  // labels of a [`MetricDescriptor`][google.api.MetricDescriptor].
184
259
  message Metric {
185
- // An existing metric type, see [google.api.MetricDescriptor][google.api.MetricDescriptor].
186
- // For example, `custom.googleapis.com/invoice/paid/amount`.
260
+ // An existing metric type, see
261
+ // [google.api.MetricDescriptor][google.api.MetricDescriptor]. For example,
262
+ // `custom.googleapis.com/invoice/paid/amount`.
187
263
  string type = 3;
188
264
 
189
265
  // The set of label values that uniquely identify this metric. All
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -17,6 +17,7 @@ syntax = "proto3";
17
17
  package google.api;
18
18
 
19
19
  import "google/api/label.proto";
20
+ import "google/api/launch_stage.proto";
20
21
  import "google/protobuf/struct.proto";
21
22
 
22
23
  option cc_enable_arenas = true;
@@ -26,16 +27,17 @@ option java_outer_classname = "MonitoredResourceProto";
26
27
  option java_package = "com.google.api";
27
28
  option objc_class_prefix = "GAPI";
28
29
 
29
-
30
- // An object that describes the schema of a [MonitoredResource][google.api.MonitoredResource] object using a
31
- // type name and a set of labels. For example, the monitored resource
32
- // descriptor for Google Compute Engine VM instances has a type of
30
+ // An object that describes the schema of a
31
+ // [MonitoredResource][google.api.MonitoredResource] object using a type name
32
+ // and a set of labels. For example, the monitored resource descriptor for
33
+ // Google Compute Engine VM instances has a type of
33
34
  // `"gce_instance"` and specifies the use of the labels `"instance_id"` and
34
35
  // `"zone"` to identify particular VM instances.
35
36
  //
36
37
  // Different APIs can support different monitored resource types. APIs generally
37
38
  // provide a `list` method that returns the monitored resource descriptors used
38
39
  // by the API.
40
+ //
39
41
  message MonitoredResourceDescriptor {
40
42
  // Optional. The resource name of the monitored resource descriptor:
41
43
  // `"projects/{project_id}/monitoredResourceDescriptors/{type}"` where
@@ -47,7 +49,10 @@ message MonitoredResourceDescriptor {
47
49
 
48
50
  // Required. The monitored resource type. For example, the type
49
51
  // `"cloudsql_database"` represents databases in Google Cloud SQL.
50
- // The maximum length of this value is 256 characters.
52
+ // For a list of types, see [Monitored resource
53
+ // types](https://cloud.google.com/monitoring/api/resources)
54
+ // and [Logging resource
55
+ // types](https://cloud.google.com/logging/docs/api/v2/resource-list).
51
56
  string type = 1;
52
57
 
53
58
  // Optional. A concise name for the monitored resource type that might be
@@ -64,25 +69,35 @@ message MonitoredResourceDescriptor {
64
69
  // resource type. For example, an individual Google Cloud SQL database is
65
70
  // identified by values for the labels `"database_id"` and `"zone"`.
66
71
  repeated LabelDescriptor labels = 4;
72
+
73
+ // Optional. The launch stage of the monitored resource definition.
74
+ LaunchStage launch_stage = 7;
67
75
  }
68
76
 
69
77
  // An object representing a resource that can be used for monitoring, logging,
70
78
  // billing, or other purposes. Examples include virtual machine instances,
71
79
  // databases, and storage devices such as disks. The `type` field identifies a
72
- // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object that describes the resource's
73
- // schema. Information in the `labels` field identifies the actual resource and
74
- // its attributes according to the schema. For example, a particular Compute
75
- // Engine VM instance could be represented by the following object, because the
76
- // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] for `"gce_instance"` has labels
77
- // `"instance_id"` and `"zone"`:
80
+ // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object
81
+ // that describes the resource's schema. Information in the `labels` field
82
+ // identifies the actual resource and its attributes according to the schema.
83
+ // For example, a particular Compute Engine VM instance could be represented by
84
+ // the following object, because the
85
+ // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] for
86
+ // `"gce_instance"` has labels
87
+ // `"project_id"`, `"instance_id"` and `"zone"`:
78
88
  //
79
89
  // { "type": "gce_instance",
80
- // "labels": { "instance_id": "12345678901234",
90
+ // "labels": { "project_id": "my-project",
91
+ // "instance_id": "12345678901234",
81
92
  // "zone": "us-central1-a" }}
82
93
  message MonitoredResource {
83
94
  // Required. The monitored resource type. This field must match
84
- // the `type` field of a [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor] object. For
85
- // example, the type of a Compute Engine VM instance is `gce_instance`.
95
+ // the `type` field of a
96
+ // [MonitoredResourceDescriptor][google.api.MonitoredResourceDescriptor]
97
+ // object. For example, the type of a Compute Engine VM instance is
98
+ // `gce_instance`. Some descriptors include the service name in the type; for
99
+ // example, the type of a Datastream stream is
100
+ // `datastream.googleapis.com/Stream`.
86
101
  string type = 1;
87
102
 
88
103
  // Required. Values for all of the labels listed in the associated monitored
@@ -91,17 +106,16 @@ message MonitoredResource {
91
106
  map<string, string> labels = 2;
92
107
  }
93
108
 
94
- // Auxiliary metadata for a [MonitoredResource][google.api.MonitoredResource] object.
95
- // [MonitoredResource][google.api.MonitoredResource] objects contain the minimum set of information to
96
- // uniquely identify a monitored resource instance. There is some other useful
97
- // auxiliary metadata. Google Stackdriver Monitoring & Logging uses an ingestion
98
- // pipeline to extract metadata for cloud resources of all types , and stores
99
- // the metadata in this message.
109
+ // Auxiliary metadata for a [MonitoredResource][google.api.MonitoredResource]
110
+ // object. [MonitoredResource][google.api.MonitoredResource] objects contain the
111
+ // minimum set of information to uniquely identify a monitored resource
112
+ // instance. There is some other useful auxiliary metadata. Monitoring and
113
+ // Logging use an ingestion pipeline to extract metadata for cloud resources of
114
+ // all types, and store the metadata in this message.
100
115
  message MonitoredResourceMetadata {
101
116
  // Output only. Values for predefined system metadata labels.
102
- // System labels are a kind of metadata extracted by Google Stackdriver.
103
- // Stackdriver determines what system labels are useful and how to obtain
104
- // their values. Some examples: "machine_image", "vpc", "subnet_id",
117
+ // System labels are a kind of metadata extracted by Google, including
118
+ // "machine_image", "vpc", "subnet_id",
105
119
  // "security_group", "name", etc.
106
120
  // System label values can be only strings, Boolean values, or a list of
107
121
  // strings. For example:
@@ -1,4 +1,4 @@
1
- // Copyright 2018 Google LLC.
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -16,74 +16,92 @@ syntax = "proto3";
16
16
 
17
17
  package google.api;
18
18
 
19
- import "google/api/annotations.proto";
20
-
21
19
  option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
22
20
  option java_multiple_files = true;
23
21
  option java_outer_classname = "MonitoringProto";
24
22
  option java_package = "com.google.api";
25
23
  option objc_class_prefix = "GAPI";
26
24
 
27
-
28
25
  // Monitoring configuration of the service.
29
26
  //
30
27
  // The example below shows how to configure monitored resources and metrics
31
28
  // for monitoring. In the example, a monitored resource and two metrics are
32
29
  // defined. The `library.googleapis.com/book/returned_count` metric is sent
33
30
  // to both producer and consumer projects, whereas the
34
- // `library.googleapis.com/book/overdue_count` metric is only sent to the
31
+ // `library.googleapis.com/book/num_overdue` metric is only sent to the
35
32
  // consumer project.
36
33
  //
37
34
  // monitored_resources:
38
- // - type: library.googleapis.com/branch
35
+ // - type: library.googleapis.com/Branch
36
+ // display_name: "Library Branch"
37
+ // description: "A branch of a library."
38
+ // launch_stage: GA
39
39
  // labels:
40
- // - key: /city
41
- // description: The city where the library branch is located in.
42
- // - key: /name
43
- // description: The name of the branch.
40
+ // - key: resource_container
41
+ // description: "The Cloud container (ie. project id) for the Branch."
42
+ // - key: location
43
+ // description: "The location of the library branch."
44
+ // - key: branch_id
45
+ // description: "The id of the branch."
44
46
  // metrics:
45
47
  // - name: library.googleapis.com/book/returned_count
48
+ // display_name: "Books Returned"
49
+ // description: "The count of books that have been returned."
50
+ // launch_stage: GA
46
51
  // metric_kind: DELTA
47
52
  // value_type: INT64
53
+ // unit: "1"
48
54
  // labels:
49
- // - key: /customer_id
50
- // - name: library.googleapis.com/book/overdue_count
55
+ // - key: customer_id
56
+ // description: "The id of the customer."
57
+ // - name: library.googleapis.com/book/num_overdue
58
+ // display_name: "Books Overdue"
59
+ // description: "The current number of overdue books."
60
+ // launch_stage: GA
51
61
  // metric_kind: GAUGE
52
62
  // value_type: INT64
63
+ // unit: "1"
53
64
  // labels:
54
- // - key: /customer_id
65
+ // - key: customer_id
66
+ // description: "The id of the customer."
55
67
  // monitoring:
56
68
  // producer_destinations:
57
- // - monitored_resource: library.googleapis.com/branch
69
+ // - monitored_resource: library.googleapis.com/Branch
58
70
  // metrics:
59
71
  // - library.googleapis.com/book/returned_count
60
72
  // consumer_destinations:
61
- // - monitored_resource: library.googleapis.com/branch
73
+ // - monitored_resource: library.googleapis.com/Branch
62
74
  // metrics:
63
75
  // - library.googleapis.com/book/returned_count
64
- // - library.googleapis.com/book/overdue_count
76
+ // - library.googleapis.com/book/num_overdue
65
77
  message Monitoring {
66
78
  // Configuration of a specific monitoring destination (the producer project
67
79
  // or the consumer project).
68
80
  message MonitoringDestination {
69
81
  // The monitored resource type. The type must be defined in
70
- // [Service.monitored_resources][google.api.Service.monitored_resources] section.
82
+ // [Service.monitored_resources][google.api.Service.monitored_resources]
83
+ // section.
71
84
  string monitored_resource = 1;
72
85
 
73
- // Names of the metrics to report to this monitoring destination.
74
- // Each name must be defined in [Service.metrics][google.api.Service.metrics] section.
86
+ // Types of the metrics to report to this monitoring destination.
87
+ // Each type must be defined in
88
+ // [Service.metrics][google.api.Service.metrics] section.
75
89
  repeated string metrics = 2;
76
90
  }
77
91
 
78
92
  // Monitoring configurations for sending metrics to the producer project.
79
- // There can be multiple producer destinations, each one must have a
80
- // different monitored resource type. A metric can be used in at most
81
- // one producer destination.
93
+ // There can be multiple producer destinations. A monitored resource type may
94
+ // appear in multiple monitoring destinations if different aggregations are
95
+ // needed for different sets of metrics associated with that monitored
96
+ // resource type. A monitored resource and metric pair may only be used once
97
+ // in the Monitoring configuration.
82
98
  repeated MonitoringDestination producer_destinations = 1;
83
99
 
84
100
  // Monitoring configurations for sending metrics to the consumer project.
85
- // There can be multiple consumer destinations, each one must have a
86
- // different monitored resource type. A metric can be used in at most
87
- // one consumer destination.
101
+ // There can be multiple consumer destinations. A monitored resource type may
102
+ // appear in multiple monitoring destinations if different aggregations are
103
+ // needed for different sets of metrics associated with that monitored
104
+ // resource type. A monitored resource and metric pair may only be used once
105
+ // in the Monitoring configuration.
88
106
  repeated MonitoringDestination consumer_destinations = 2;
89
107
  }