google-cloud-monitoring-v3 0.15.2 → 0.17.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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/monitoring/v3/group_service/client.rb +11 -8
  4. data/lib/google/cloud/monitoring/v3/metric_service/client.rb +45 -30
  5. data/lib/google/cloud/monitoring/v3/query_service/client.rb +5 -4
  6. data/lib/google/cloud/monitoring/v3/query_service.rb +1 -1
  7. data/lib/google/cloud/monitoring/v3/service_monitoring_service/client.rb +34 -32
  8. data/lib/google/cloud/monitoring/v3/service_monitoring_service.rb +3 -3
  9. data/lib/google/cloud/monitoring/v3/uptime_check_service/paths.rb +19 -0
  10. data/lib/google/cloud/monitoring/v3/version.rb +1 -1
  11. data/lib/google/monitoring/v3/alert_pb.rb +1 -1
  12. data/lib/google/monitoring/v3/alert_service_pb.rb +1 -1
  13. data/lib/google/monitoring/v3/common_pb.rb +1 -1
  14. data/lib/google/monitoring/v3/group_service_pb.rb +1 -1
  15. data/lib/google/monitoring/v3/metric_service_pb.rb +1 -1
  16. data/lib/google/monitoring/v3/metric_service_services_pb.rb +11 -7
  17. data/lib/google/monitoring/v3/notification_service_pb.rb +1 -1
  18. data/lib/google/monitoring/v3/query_service_pb.rb +2 -2
  19. data/lib/google/monitoring/v3/query_service_services_pb.rb +2 -2
  20. data/lib/google/monitoring/v3/service_pb.rb +7 -1
  21. data/lib/google/monitoring/v3/service_service_pb.rb +1 -1
  22. data/lib/google/monitoring/v3/service_service_services_pb.rb +4 -4
  23. data/lib/google/monitoring/v3/snooze_pb.rb +1 -1
  24. data/lib/google/monitoring/v3/snooze_service_pb.rb +1 -1
  25. data/lib/google/monitoring/v3/uptime_pb.rb +5 -1
  26. data/lib/google/monitoring/v3/uptime_service_pb.rb +1 -1
  27. data/proto_docs/google/api/client.rb +4 -0
  28. data/proto_docs/google/api/monitored_resource.rb +1 -1
  29. data/proto_docs/google/monitoring/v3/alert.rb +4 -3
  30. data/proto_docs/google/monitoring/v3/common.rb +43 -33
  31. data/proto_docs/google/monitoring/v3/group_service.rb +11 -8
  32. data/proto_docs/google/monitoring/v3/metric_service.rb +35 -24
  33. data/proto_docs/google/monitoring/v3/service.rb +150 -8
  34. data/proto_docs/google/monitoring/v3/service_service.rb +28 -26
  35. data/proto_docs/google/monitoring/v3/uptime.rb +59 -1
  36. metadata +4 -116
@@ -24,8 +24,9 @@ module Google
24
24
  # The `ListGroup` request.
25
25
  # @!attribute [rw] name
26
26
  # @return [::String]
27
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name)
28
- # whose groups are to be listed. The format is:
27
+ # Required. The
28
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) whose
29
+ # groups are to be listed. The format is:
29
30
  #
30
31
  # projects/[PROJECT_ID_OR_NUMBER]
31
32
  # @!attribute [rw] children_of_group
@@ -96,14 +97,15 @@ module Google
96
97
  # The `CreateGroup` request.
97
98
  # @!attribute [rw] name
98
99
  # @return [::String]
99
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) in
100
- # which to create the group. The format is:
100
+ # Required. The
101
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) in which
102
+ # to create the group. The format is:
101
103
  #
102
104
  # projects/[PROJECT_ID_OR_NUMBER]
103
105
  # @!attribute [rw] group
104
106
  # @return [::Google::Cloud::Monitoring::V3::Group]
105
- # Required. A group definition. It is an error to define the `name` field because
106
- # the system assigns the name.
107
+ # Required. A group definition. It is an error to define the `name` field
108
+ # because the system assigns the name.
107
109
  # @!attribute [rw] validate_only
108
110
  # @return [::Boolean]
109
111
  # If true, validate this request but do not create the group.
@@ -115,8 +117,9 @@ module Google
115
117
  # The `UpdateGroup` request.
116
118
  # @!attribute [rw] group
117
119
  # @return [::Google::Cloud::Monitoring::V3::Group]
118
- # Required. The new definition of the group. All fields of the existing group,
119
- # excepting `name`, are replaced with the corresponding fields of this group.
120
+ # Required. The new definition of the group. All fields of the existing
121
+ # group, excepting `name`, are replaced with the corresponding fields of this
122
+ # group.
120
123
  # @!attribute [rw] validate_only
121
124
  # @return [::Boolean]
122
125
  # If true, validate this request but do not update the existing group.
@@ -24,8 +24,9 @@ module Google
24
24
  # The `ListMonitoredResourceDescriptors` request.
25
25
  # @!attribute [rw] name
26
26
  # @return [::String]
27
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on
28
- # which to execute the request. The format is:
27
+ # Required. The
28
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) on which
29
+ # to execute the request. The format is:
29
30
  #
30
31
  # projects/[PROJECT_ID_OR_NUMBER]
31
32
  # @!attribute [rw] filter
@@ -81,8 +82,9 @@ module Google
81
82
  # The `ListMetricDescriptors` request.
82
83
  # @!attribute [rw] name
83
84
  # @return [::String]
84
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on
85
- # which to execute the request. The format is:
85
+ # Required. The
86
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) on which
87
+ # to execute the request. The format is:
86
88
  #
87
89
  # projects/[PROJECT_ID_OR_NUMBER]
88
90
  # @!attribute [rw] filter
@@ -97,7 +99,9 @@ module Google
97
99
  # metric.type = starts_with("custom.googleapis.com/")
98
100
  # @!attribute [rw] page_size
99
101
  # @return [::Integer]
100
- # A positive number that is the maximum number of results to return.
102
+ # A positive number that is the maximum number of results to return. The
103
+ # default and maximum value is 10,000. If a page_size <= 0 or > 10,000 is
104
+ # submitted, will instead return a maximum of 10,000 results.
101
105
  # @!attribute [rw] page_token
102
106
  # @return [::String]
103
107
  # If this field is not empty then it must contain the `nextPageToken` value
@@ -126,7 +130,8 @@ module Google
126
130
  # The `GetMetricDescriptor` request.
127
131
  # @!attribute [rw] name
128
132
  # @return [::String]
129
- # Required. The metric descriptor on which to execute the request. The format is:
133
+ # Required. The metric descriptor on which to execute the request. The format
134
+ # is:
130
135
  #
131
136
  # projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]
132
137
  #
@@ -140,14 +145,15 @@ module Google
140
145
  # The `CreateMetricDescriptor` request.
141
146
  # @!attribute [rw] name
142
147
  # @return [::String]
143
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on
144
- # which to execute the request. The format is:
148
+ # Required. The
149
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) on which
150
+ # to execute the request. The format is:
145
151
  # 4
146
152
  # projects/[PROJECT_ID_OR_NUMBER]
147
153
  # @!attribute [rw] metric_descriptor
148
154
  # @return [::Google::Api::MetricDescriptor]
149
- # Required. The new [custom metric](https://cloud.google.com/monitoring/custom-metrics)
150
- # descriptor.
155
+ # Required. The new [custom
156
+ # metric](https://cloud.google.com/monitoring/custom-metrics) descriptor.
151
157
  class CreateMetricDescriptorRequest
152
158
  include ::Google::Protobuf::MessageExts
153
159
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -156,7 +162,8 @@ module Google
156
162
  # The `DeleteMetricDescriptor` request.
157
163
  # @!attribute [rw] name
158
164
  # @return [::String]
159
- # Required. The metric descriptor on which to execute the request. The format is:
165
+ # Required. The metric descriptor on which to execute the request. The format
166
+ # is:
160
167
  #
161
168
  # projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]
162
169
  #
@@ -170,7 +177,8 @@ module Google
170
177
  # The `ListTimeSeries` request.
171
178
  # @!attribute [rw] name
172
179
  # @return [::String]
173
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name),
180
+ # Required. The
181
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name),
174
182
  # organization or folder on which to execute the request. The format is:
175
183
  #
176
184
  # projects/[PROJECT_ID_OR_NUMBER]
@@ -178,18 +186,19 @@ module Google
178
186
  # folders/[FOLDER_ID]
179
187
  # @!attribute [rw] filter
180
188
  # @return [::String]
181
- # Required. A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters)
182
- # that specifies which time series should be returned. The filter must
183
- # specify a single metric type, and can additionally specify metric labels
184
- # and other information. For example:
189
+ # Required. A [monitoring
190
+ # filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies
191
+ # which time series should be returned. The filter must specify a single
192
+ # metric type, and can additionally specify metric labels and other
193
+ # information. For example:
185
194
  #
186
195
  # metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND
187
196
  # metric.labels.instance_name = "my-instance-name"
188
197
  # @!attribute [rw] interval
189
198
  # @return [::Google::Cloud::Monitoring::V3::TimeInterval]
190
- # Required. The time interval for which results should be returned. Only time series
191
- # that contain data points in the specified interval are included
192
- # in the response.
199
+ # Required. The time interval for which results should be returned. Only time
200
+ # series that contain data points in the specified interval are included in
201
+ # the response.
193
202
  # @!attribute [rw] aggregation
194
203
  # @return [::Google::Cloud::Monitoring::V3::Aggregation]
195
204
  # Specifies the alignment of data points in individual time series as
@@ -224,7 +233,7 @@ module Google
224
233
  include ::Google::Protobuf::MessageExts
225
234
  extend ::Google::Protobuf::MessageExts::ClassMethods
226
235
 
227
- # Controls which fields are returned by `ListTimeSeries`.
236
+ # Controls which fields are returned by `ListTimeSeries*`.
228
237
  module TimeSeriesView
229
238
  # Returns the identity of the metric(s), the time series,
230
239
  # and the time series data.
@@ -265,8 +274,9 @@ module Google
265
274
  # The `CreateTimeSeries` request.
266
275
  # @!attribute [rw] name
267
276
  # @return [::String]
268
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on
269
- # which to execute the request. The format is:
277
+ # Required. The
278
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) on which
279
+ # to execute the request. The format is:
270
280
  #
271
281
  # projects/[PROJECT_ID_OR_NUMBER]
272
282
  # @!attribute [rw] time_series
@@ -327,8 +337,9 @@ module Google
327
337
  # The `QueryTimeSeries` request.
328
338
  # @!attribute [rw] name
329
339
  # @return [::String]
330
- # Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on
331
- # which to execute the request. The format is:
340
+ # Required. The
341
+ # [project](https://cloud.google.com/monitoring/api/v3#project_name) on which
342
+ # to execute the request. The format is:
332
343
  #
333
344
  # projects/[PROJECT_ID_OR_NUMBER]
334
345
  # @!attribute [rw] query
@@ -28,7 +28,7 @@ module Google
28
28
  # operational aspects of the service are accessible.
29
29
  # @!attribute [rw] name
30
30
  # @return [::String]
31
- # Resource name for this Service. The format is:
31
+ # Identifier. Resource name for this Service. The format is:
32
32
  #
33
33
  # projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]
34
34
  # @!attribute [rw] display_name
@@ -54,6 +54,24 @@ module Google
54
54
  # Type used for canonical services scoped to an Istio mesh.
55
55
  # Metrics for Istio are
56
56
  # [documented here](https://istio.io/latest/docs/reference/config/metrics/)
57
+ # @!attribute [rw] cloud_run
58
+ # @return [::Google::Cloud::Monitoring::V3::Service::CloudRun]
59
+ # Type used for Cloud Run services.
60
+ # @!attribute [rw] gke_namespace
61
+ # @return [::Google::Cloud::Monitoring::V3::Service::GkeNamespace]
62
+ # Type used for GKE Namespaces.
63
+ # @!attribute [rw] gke_workload
64
+ # @return [::Google::Cloud::Monitoring::V3::Service::GkeWorkload]
65
+ # Type used for GKE Workloads.
66
+ # @!attribute [rw] gke_service
67
+ # @return [::Google::Cloud::Monitoring::V3::Service::GkeService]
68
+ # Type used for GKE Services (the Kubernetes concept of a service).
69
+ # @!attribute [rw] basic_service
70
+ # @return [::Google::Cloud::Monitoring::V3::Service::BasicService]
71
+ # Message that contains the service type and service labels of this service
72
+ # if it is a basic service.
73
+ # Documentation and examples
74
+ # [here](https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli).
57
75
  # @!attribute [rw] telemetry
58
76
  # @return [::Google::Cloud::Monitoring::V3::Service::Telemetry]
59
77
  # Configuration for how to query telemetry on a Service.
@@ -69,8 +87,9 @@ module Google
69
87
  include ::Google::Protobuf::MessageExts
70
88
  extend ::Google::Protobuf::MessageExts::ClassMethods
71
89
 
72
- # Custom view of service telemetry. Currently a place-holder pending final
73
- # design.
90
+ # Use a custom service to designate a service that you want to monitor
91
+ # when none of the other service types (like App Engine, Cloud Run, or
92
+ # a GKE type) matches your intended service.
74
93
  class Custom
75
94
  include ::Google::Protobuf::MessageExts
76
95
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -80,8 +99,8 @@ module Google
80
99
  # @!attribute [rw] module_id
81
100
  # @return [::String]
82
101
  # The ID of the App Engine module underlying this service. Corresponds to
83
- # the `module_id` resource label in the `gae_app` monitored resource:
84
- # https://cloud.google.com/monitoring/api/resources#tag_gae_app
102
+ # the `module_id` resource label in the [`gae_app` monitored
103
+ # resource](https://cloud.google.com/monitoring/api/resources#tag_gae_app).
85
104
  class AppEngine
86
105
  include ::Google::Protobuf::MessageExts
87
106
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -91,8 +110,8 @@ module Google
91
110
  # @!attribute [rw] service
92
111
  # @return [::String]
93
112
  # The name of the Cloud Endpoints service underlying this service.
94
- # Corresponds to the `service` resource label in the `api` monitored
95
- # resource: https://cloud.google.com/monitoring/api/resources#tag_api
113
+ # Corresponds to the `service` resource label in the [`api` monitored
114
+ # resource](https://cloud.google.com/monitoring/api/resources#tag_api).
96
115
  class CloudEndpoints
97
116
  include ::Google::Protobuf::MessageExts
98
117
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -167,6 +186,129 @@ module Google
167
186
  extend ::Google::Protobuf::MessageExts::ClassMethods
168
187
  end
169
188
 
189
+ # Cloud Run service. Learn more at https://cloud.google.com/run.
190
+ # @!attribute [rw] service_name
191
+ # @return [::String]
192
+ # The name of the Cloud Run service. Corresponds to the `service_name`
193
+ # resource label in the [`cloud_run_revision` monitored
194
+ # resource](https://cloud.google.com/monitoring/api/resources#tag_cloud_run_revision).
195
+ # @!attribute [rw] location
196
+ # @return [::String]
197
+ # The location the service is run. Corresponds to the `location`
198
+ # resource label in the [`cloud_run_revision` monitored
199
+ # resource](https://cloud.google.com/monitoring/api/resources#tag_cloud_run_revision).
200
+ class CloudRun
201
+ include ::Google::Protobuf::MessageExts
202
+ extend ::Google::Protobuf::MessageExts::ClassMethods
203
+ end
204
+
205
+ # GKE Namespace. The field names correspond to the resource metadata labels
206
+ # on monitored resources that fall under a namespace (for example,
207
+ # `k8s_container` or `k8s_pod`).
208
+ # @!attribute [r] project_id
209
+ # @return [::String]
210
+ # Output only. The project this resource lives in. For legacy services
211
+ # migrated from the `Custom` type, this may be a distinct project from the
212
+ # one parenting the service itself.
213
+ # @!attribute [rw] location
214
+ # @return [::String]
215
+ # The location of the parent cluster. This may be a zone or region.
216
+ # @!attribute [rw] cluster_name
217
+ # @return [::String]
218
+ # The name of the parent cluster.
219
+ # @!attribute [rw] namespace_name
220
+ # @return [::String]
221
+ # The name of this namespace.
222
+ class GkeNamespace
223
+ include ::Google::Protobuf::MessageExts
224
+ extend ::Google::Protobuf::MessageExts::ClassMethods
225
+ end
226
+
227
+ # A GKE Workload (Deployment, StatefulSet, etc). The field names correspond
228
+ # to the metadata labels on monitored resources that fall under a workload
229
+ # (for example, `k8s_container` or `k8s_pod`).
230
+ # @!attribute [r] project_id
231
+ # @return [::String]
232
+ # Output only. The project this resource lives in. For legacy services
233
+ # migrated from the `Custom` type, this may be a distinct project from the
234
+ # one parenting the service itself.
235
+ # @!attribute [rw] location
236
+ # @return [::String]
237
+ # The location of the parent cluster. This may be a zone or region.
238
+ # @!attribute [rw] cluster_name
239
+ # @return [::String]
240
+ # The name of the parent cluster.
241
+ # @!attribute [rw] namespace_name
242
+ # @return [::String]
243
+ # The name of the parent namespace.
244
+ # @!attribute [rw] top_level_controller_type
245
+ # @return [::String]
246
+ # The type of this workload (for example, "Deployment" or "DaemonSet")
247
+ # @!attribute [rw] top_level_controller_name
248
+ # @return [::String]
249
+ # The name of this workload.
250
+ class GkeWorkload
251
+ include ::Google::Protobuf::MessageExts
252
+ extend ::Google::Protobuf::MessageExts::ClassMethods
253
+ end
254
+
255
+ # GKE Service. The "service" here represents a
256
+ # [Kubernetes service
257
+ # object](https://kubernetes.io/docs/concepts/services-networking/service).
258
+ # The field names correspond to the resource labels on [`k8s_service`
259
+ # monitored
260
+ # resources](https://cloud.google.com/monitoring/api/resources#tag_k8s_service).
261
+ # @!attribute [r] project_id
262
+ # @return [::String]
263
+ # Output only. The project this resource lives in. For legacy services
264
+ # migrated from the `Custom` type, this may be a distinct project from the
265
+ # one parenting the service itself.
266
+ # @!attribute [rw] location
267
+ # @return [::String]
268
+ # The location of the parent cluster. This may be a zone or region.
269
+ # @!attribute [rw] cluster_name
270
+ # @return [::String]
271
+ # The name of the parent cluster.
272
+ # @!attribute [rw] namespace_name
273
+ # @return [::String]
274
+ # The name of the parent namespace.
275
+ # @!attribute [rw] service_name
276
+ # @return [::String]
277
+ # The name of this service.
278
+ class GkeService
279
+ include ::Google::Protobuf::MessageExts
280
+ extend ::Google::Protobuf::MessageExts::ClassMethods
281
+ end
282
+
283
+ # A well-known service type, defined by its service type and service labels.
284
+ # Documentation and examples
285
+ # [here](https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli).
286
+ # @!attribute [rw] service_type
287
+ # @return [::String]
288
+ # The type of service that this basic service defines, e.g.
289
+ # APP_ENGINE service type.
290
+ # Documentation and valid values
291
+ # [here](https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli).
292
+ # @!attribute [rw] service_labels
293
+ # @return [::Google::Protobuf::Map{::String => ::String}]
294
+ # Labels that specify the resource that emits the monitoring data which
295
+ # is used for SLO reporting of this `Service`.
296
+ # Documentation and valid values for given service types
297
+ # [here](https://cloud.google.com/stackdriver/docs/solutions/slo-monitoring/api/api-structures#basic-svc-w-basic-sli).
298
+ class BasicService
299
+ include ::Google::Protobuf::MessageExts
300
+ extend ::Google::Protobuf::MessageExts::ClassMethods
301
+
302
+ # @!attribute [rw] key
303
+ # @return [::String]
304
+ # @!attribute [rw] value
305
+ # @return [::String]
306
+ class ServiceLabelsEntry
307
+ include ::Google::Protobuf::MessageExts
308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
309
+ end
310
+ end
311
+
170
312
  # Configuration for how to query telemetry on a Service.
171
313
  # @!attribute [rw] resource_name
172
314
  # @return [::String]
@@ -195,7 +337,7 @@ module Google
195
337
  # "99.5% of requests in each calendar month return successfully."
196
338
  # @!attribute [rw] name
197
339
  # @return [::String]
198
- # Resource name for this `ServiceLevelObjective`. The format is:
340
+ # Identifier. Resource name for this `ServiceLevelObjective`. The format is:
199
341
  #
200
342
  # projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
201
343
  # @!attribute [rw] display_name
@@ -24,8 +24,9 @@ module Google
24
24
  # The `CreateService` request.
25
25
  # @!attribute [rw] parent
26
26
  # @return [::String]
27
- # Required. Resource [name](https://cloud.google.com/monitoring/api/v3#project_name) of
28
- # the parent workspace. The format is:
27
+ # Required. Resource
28
+ # [name](https://cloud.google.com/monitoring/api/v3#project_name) of the
29
+ # parent Metrics Scope. The format is:
29
30
  #
30
31
  # projects/[PROJECT_ID_OR_NUMBER]
31
32
  # @!attribute [rw] service_id
@@ -54,33 +55,32 @@ module Google
54
55
  # The `ListServices` request.
55
56
  # @!attribute [rw] parent
56
57
  # @return [::String]
57
- # Required. Resource name of the parent containing the listed services, either a
58
- # [project](https://cloud.google.com/monitoring/api/v3#project_name) or a
59
- # Monitoring Workspace. The formats are:
58
+ # Required. Resource name of the parent containing the listed services,
59
+ # either a [project](https://cloud.google.com/monitoring/api/v3#project_name)
60
+ # or a Monitoring Metrics Scope. The formats are:
60
61
  #
61
62
  # projects/[PROJECT_ID_OR_NUMBER]
62
63
  # workspaces/[HOST_PROJECT_ID_OR_NUMBER]
63
64
  # @!attribute [rw] filter
64
65
  # @return [::String]
65
- # A filter specifying what `Service`s to return. The filter currently
66
- # supports the following fields:
66
+ # A filter specifying what `Service`s to return. The filter supports
67
+ # filtering on a particular service-identifier type or one of its attributes.
67
68
  #
68
- # - `identifier_case`
69
- # - `app_engine.module_id`
70
- # - `cloud_endpoints.service` (reserved for future use)
71
- # - `mesh_istio.mesh_uid`
72
- # - `mesh_istio.service_namespace`
73
- # - `mesh_istio.service_name`
74
- # - `cluster_istio.location` (deprecated)
75
- # - `cluster_istio.cluster_name` (deprecated)
76
- # - `cluster_istio.service_namespace` (deprecated)
77
- # - `cluster_istio.service_name` (deprecated)
69
+ # To filter on a particular service-identifier type, the `identifier_case`
70
+ # refers to which option in the `identifier` field is populated. For example,
71
+ # the filter `identifier_case = "CUSTOM"` would match all services with a
72
+ # value for the `custom` field. Valid options include "CUSTOM", "APP_ENGINE",
73
+ # "MESH_ISTIO", and the other options listed at
74
+ # https://cloud.google.com/monitoring/api/ref_v3/rest/v3/services#Service
78
75
  #
79
- # `identifier_case` refers to which option in the identifier oneof is
80
- # populated. For example, the filter `identifier_case = "CUSTOM"` would match
81
- # all services with a value for the `custom` field. Valid options are
82
- # "CUSTOM", "APP_ENGINE", "MESH_ISTIO", plus "CLUSTER_ISTIO" (deprecated)
83
- # and "CLOUD_ENDPOINTS" (reserved for future use).
76
+ # To filter on an attribute of a service-identifier type, apply the filter
77
+ # name by using the snake case of the service-identifier type and the
78
+ # attribute of that service-identifier type, and join the two with a period.
79
+ # For example, to filter by the `meshUid` field of the `MeshIstio`
80
+ # service-identifier type, you must filter on `mesh_istio.mesh_uid =
81
+ # "123"` to match all services with mesh UID "123". Service-identifier types
82
+ # and their attributes are described at
83
+ # https://cloud.google.com/monitoring/api/ref_v3/rest/v3/services#Service
84
84
  # @!attribute [rw] page_size
85
85
  # @return [::Integer]
86
86
  # A non-negative number that is the maximum number of results to return.
@@ -143,7 +143,7 @@ module Google
143
143
  # @return [::String]
144
144
  # Optional. The ServiceLevelObjective id to use for this
145
145
  # ServiceLevelObjective. If omitted, an id will be generated instead. Must
146
- # match the pattern `[a-z0-9\-]+`
146
+ # match the pattern `^[a-zA-Z0-9-_:.]+$`
147
147
  # @!attribute [rw] service_level_objective
148
148
  # @return [::Google::Cloud::Monitoring::V3::ServiceLevelObjective]
149
149
  # Required. The `ServiceLevelObjective` to create.
@@ -157,7 +157,8 @@ module Google
157
157
  # The `GetServiceLevelObjective` request.
158
158
  # @!attribute [rw] name
159
159
  # @return [::String]
160
- # Required. Resource name of the `ServiceLevelObjective` to get. The format is:
160
+ # Required. Resource name of the `ServiceLevelObjective` to get. The format
161
+ # is:
161
162
  #
162
163
  # projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
163
164
  # @!attribute [rw] view
@@ -175,7 +176,7 @@ module Google
175
176
  # @!attribute [rw] parent
176
177
  # @return [::String]
177
178
  # Required. Resource name of the parent containing the listed SLOs, either a
178
- # project or a Monitoring Workspace. The formats are:
179
+ # project or a Monitoring Metrics Scope. The formats are:
179
180
  #
180
181
  # projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]
181
182
  # workspaces/[HOST_PROJECT_ID_OR_NUMBER]/services/-
@@ -232,7 +233,8 @@ module Google
232
233
  # The `DeleteServiceLevelObjective` request.
233
234
  # @!attribute [rw] name
234
235
  # @return [::String]
235
- # Required. Resource name of the `ServiceLevelObjective` to delete. The format is:
236
+ # Required. Resource name of the `ServiceLevelObjective` to delete. The
237
+ # format is:
236
238
  #
237
239
  # projects/[PROJECT_ID_OR_NUMBER]/services/[SERVICE_ID]/serviceLevelObjectives/[SLO_NAME]
238
240
  class DeleteServiceLevelObjectiveRequest
@@ -79,11 +79,38 @@ module Google
79
79
  end
80
80
  end
81
81
 
82
+ # Describes a Synthetic Monitor to be invoked by Uptime.
83
+ # @!attribute [rw] cloud_function_v2
84
+ # @return [::Google::Cloud::Monitoring::V3::SyntheticMonitorTarget::CloudFunctionV2Target]
85
+ # Target a Synthetic Monitor GCFv2 instance.
86
+ class SyntheticMonitorTarget
87
+ include ::Google::Protobuf::MessageExts
88
+ extend ::Google::Protobuf::MessageExts::ClassMethods
89
+
90
+ # A Synthetic Monitor deployed to a Cloud Functions V2 instance.
91
+ # @!attribute [rw] name
92
+ # @return [::String]
93
+ # Required. Fully qualified GCFv2 resource name
94
+ # i.e. `projects/{project}/locations/{location}/functions/{function}`
95
+ # Required.
96
+ # @!attribute [r] cloud_run_revision
97
+ # @return [::Google::Api::MonitoredResource]
98
+ # Output only. The `cloud_run_revision` Monitored Resource associated with
99
+ # the GCFv2. The Synthetic Monitor execution results (metrics, logs, and
100
+ # spans) are reported against this Monitored Resource. This field is output
101
+ # only.
102
+ class CloudFunctionV2Target
103
+ include ::Google::Protobuf::MessageExts
104
+ extend ::Google::Protobuf::MessageExts::ClassMethods
105
+ end
106
+ end
107
+
82
108
  # This message configures which resources and services to monitor for
83
109
  # availability.
84
110
  # @!attribute [rw] name
85
111
  # @return [::String]
86
- # A unique resource name for this Uptime check configuration. The format is:
112
+ # Identifier. A unique resource name for this Uptime check configuration. The
113
+ # format is:
87
114
  #
88
115
  # projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID]
89
116
  #
@@ -115,6 +142,9 @@ module Google
115
142
  # @!attribute [rw] resource_group
116
143
  # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::ResourceGroup]
117
144
  # The group resource associated with the configuration.
145
+ # @!attribute [rw] synthetic_monitor
146
+ # @return [::Google::Cloud::Monitoring::V3::SyntheticMonitorTarget]
147
+ # Specifies a Synthetic Monitor to invoke.
118
148
  # @!attribute [rw] http_check
119
149
  # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::HttpCheck]
120
150
  # Contains information needed to make an HTTP or HTTPS check.
@@ -226,6 +256,7 @@ module Google
226
256
  # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::HttpCheck::BasicAuthentication]
227
257
  # The authentication information. Optional when creating an HTTP check;
228
258
  # defaults to empty.
259
+ # Do not set both `auth_method` and `auth_info`.
229
260
  # @!attribute [rw] mask_headers
230
261
  # @return [::Boolean]
231
262
  # Boolean specifying whether to encrypt the header information.
@@ -287,6 +318,11 @@ module Google
287
318
  # @!attribute [rw] ping_config
288
319
  # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::PingConfig]
289
320
  # Contains information needed to add pings to an HTTP check.
321
+ # @!attribute [rw] service_agent_authentication
322
+ # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::HttpCheck::ServiceAgentAuthentication]
323
+ # If specified, Uptime will generate and attach an OIDC JWT token for the
324
+ # Monitoring service agent service account as an `Authorization` header
325
+ # in the HTTP request when probing.
290
326
  class HttpCheck
291
327
  include ::Google::Protobuf::MessageExts
292
328
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -343,6 +379,28 @@ module Google
343
379
  end
344
380
  end
345
381
 
382
+ # Contains information needed for generating an
383
+ # [OpenID Connect
384
+ # token](https://developers.google.com/identity/protocols/OpenIDConnect).
385
+ # The OIDC token will be generated for the Monitoring service agent service
386
+ # account.
387
+ # @!attribute [rw] type
388
+ # @return [::Google::Cloud::Monitoring::V3::UptimeCheckConfig::HttpCheck::ServiceAgentAuthentication::ServiceAgentAuthenticationType]
389
+ # Type of authentication.
390
+ class ServiceAgentAuthentication
391
+ include ::Google::Protobuf::MessageExts
392
+ extend ::Google::Protobuf::MessageExts::ClassMethods
393
+
394
+ # Type of authentication.
395
+ module ServiceAgentAuthenticationType
396
+ # Default value, will result in OIDC Authentication.
397
+ SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED = 0
398
+
399
+ # OIDC Authentication
400
+ OIDC_TOKEN = 1
401
+ end
402
+ end
403
+
346
404
  # @!attribute [rw] key
347
405
  # @return [::String]
348
406
  # @!attribute [rw] value