google-cloud-monitoring 0.25.0 → 0.26.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.
@@ -28,6 +28,7 @@ require "pathname"
28
28
  require "google/gax"
29
29
 
30
30
  require "google/monitoring/v3/metric_service_pb"
31
+ require "google/cloud/monitoring/credentials"
31
32
 
32
33
  module Google
33
34
  module Cloud
@@ -124,50 +125,24 @@ module Google
124
125
  )
125
126
  end
126
127
 
127
- # Parses the project from a project resource.
128
- # @param project_name [String]
129
- # @return [String]
130
- def self.match_project_from_project_name project_name
131
- PROJECT_PATH_TEMPLATE.match(project_name)["project"]
132
- end
133
-
134
- # Parses the project from a metric_descriptor resource.
135
- # @param metric_descriptor_name [String]
136
- # @return [String]
137
- def self.match_project_from_metric_descriptor_name metric_descriptor_name
138
- METRIC_DESCRIPTOR_PATH_TEMPLATE.match(metric_descriptor_name)["project"]
139
- end
140
-
141
- # Parses the metric_descriptor from a metric_descriptor resource.
142
- # @param metric_descriptor_name [String]
143
- # @return [String]
144
- def self.match_metric_descriptor_from_metric_descriptor_name metric_descriptor_name
145
- METRIC_DESCRIPTOR_PATH_TEMPLATE.match(metric_descriptor_name)["metric_descriptor"]
146
- end
147
-
148
- # Parses the project from a monitored_resource_descriptor resource.
149
- # @param monitored_resource_descriptor_name [String]
150
- # @return [String]
151
- def self.match_project_from_monitored_resource_descriptor_name monitored_resource_descriptor_name
152
- MONITORED_RESOURCE_DESCRIPTOR_PATH_TEMPLATE.match(monitored_resource_descriptor_name)["project"]
153
- end
154
-
155
- # Parses the monitored_resource_descriptor from a monitored_resource_descriptor resource.
156
- # @param monitored_resource_descriptor_name [String]
157
- # @return [String]
158
- def self.match_monitored_resource_descriptor_from_monitored_resource_descriptor_name monitored_resource_descriptor_name
159
- MONITORED_RESOURCE_DESCRIPTOR_PATH_TEMPLATE.match(monitored_resource_descriptor_name)["monitored_resource_descriptor"]
160
- end
161
-
162
- # @param service_path [String]
163
- # The domain name of the API remote host.
164
- # @param port [Integer]
165
- # The port on which to connect to the remote host.
166
- # @param channel [Channel]
167
- # A Channel object through which to make calls.
168
- # @param chan_creds [Grpc::ChannelCredentials]
169
- # A ChannelCredentials for the setting up the RPC client.
170
- # @param client_config[Hash]
128
+ # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
129
+ # Provides the means for authenticating requests made by the client. This parameter can
130
+ # be many types.
131
+ # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
132
+ # authenticating requests made by this client.
133
+ # A `String` will be treated as the path to the keyfile to be used for the construction of
134
+ # credentials for this client.
135
+ # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
136
+ # credentials for this client.
137
+ # A `GRPC::Core::Channel` will be used to make calls through.
138
+ # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
139
+ # should already be composed with a `GRPC::Core::CallCredentials` object.
140
+ # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
141
+ # metadata for requests, generally, to give OAuth credentials.
142
+ # @param scopes [Array<String>]
143
+ # The OAuth scopes for this service. This parameter is ignored if
144
+ # an updater_proc is supplied.
145
+ # @param client_config [Hash]
171
146
  # A Hash for call options for each method. See
172
147
  # Google::Gax#construct_settings for the structure of
173
148
  # this data. Falls back to the default config if not specified
@@ -179,11 +154,11 @@ module Google
179
154
  port: DEFAULT_SERVICE_PORT,
180
155
  channel: nil,
181
156
  chan_creds: nil,
157
+ updater_proc: nil,
158
+ credentials: nil,
182
159
  scopes: ALL_SCOPES,
183
160
  client_config: {},
184
161
  timeout: DEFAULT_TIMEOUT,
185
- app_name: nil,
186
- app_version: nil,
187
162
  lib_name: nil,
188
163
  lib_version: ""
189
164
  # These require statements are intentionally placed here to initialize
@@ -192,14 +167,38 @@ module Google
192
167
  require "google/gax/grpc"
193
168
  require "google/monitoring/v3/metric_service_services_pb"
194
169
 
170
+ if channel || chan_creds || updater_proc
171
+ warn "The `channel`, `chan_creds`, and `updater_proc` parameters will be removed " \
172
+ "on 2017/09/08"
173
+ credentials ||= channel
174
+ credentials ||= chan_creds
175
+ credentials ||= updater_proc
176
+ end
177
+ if service_path != SERVICE_ADDRESS || port != DEFAULT_SERVICE_PORT
178
+ warn "`service_path` and `port` parameters are deprecated and will be removed"
179
+ end
195
180
 
196
- if app_name || app_version
197
- warn "`app_name` and `app_version` are no longer being used in the request headers."
181
+ credentials ||= Google::Cloud::Monitoring::Credentials.default
182
+
183
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
184
+ updater_proc = Google::Cloud::Monitoring::Credentials.new(credentials).updater_proc
185
+ end
186
+ if credentials.is_a?(GRPC::Core::Channel)
187
+ channel = credentials
188
+ end
189
+ if credentials.is_a?(GRPC::Core::ChannelCredentials)
190
+ chan_creds = credentials
191
+ end
192
+ if credentials.is_a?(Proc)
193
+ updater_proc = credentials
194
+ end
195
+ if credentials.is_a?(Google::Auth::Credentials)
196
+ updater_proc = credentials.updater_proc
198
197
  end
199
198
 
200
199
  google_api_client = "gl-ruby/#{RUBY_VERSION}"
201
200
  google_api_client << " #{lib_name}/#{lib_version}" if lib_name
202
- google_api_client << " gapic/0.6.8 gax/#{Google::Gax::VERSION}"
201
+ google_api_client << " gapic/0.1.0 gax/#{Google::Gax::VERSION}"
203
202
  google_api_client << " grpc/#{GRPC::VERSION}"
204
203
  google_api_client.freeze
205
204
 
@@ -224,6 +223,7 @@ module Google
224
223
  port,
225
224
  chan_creds: chan_creds,
226
225
  channel: channel,
226
+ updater_proc: updater_proc,
227
227
  scopes: scopes,
228
228
  &Google::Monitoring::V3::MetricService::Stub.method(:new)
229
229
  )
@@ -270,7 +270,7 @@ module Google
270
270
  # The project on which to execute the request. The format is
271
271
  # +"projects/{project_id_or_number}"+.
272
272
  # @param filter [String]
273
- # An optional {filter}[https://cloud.google.com/monitoring/api/v3/filters] describing
273
+ # An optional [filter](https://cloud.google.com/monitoring/api/v3/filters) describing
274
274
  # the descriptors to be returned. The filter can reference
275
275
  # the descriptor's type and labels. For example, the
276
276
  # following filter returns only Google Compute Engine descriptors
@@ -293,12 +293,10 @@ module Google
293
293
  # object.
294
294
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
295
295
  # @example
296
- # require "google/cloud/monitoring/v3/metric_service_client"
297
- #
298
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
296
+ # require "google/cloud/monitoring/v3"
299
297
  #
300
- # metric_service_client = MetricServiceClient.new
301
- # formatted_name = MetricServiceClient.project_path("[PROJECT]")
298
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
299
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path("[PROJECT]")
302
300
  #
303
301
  # # Iterate over all results.
304
302
  # metric_service_client.list_monitored_resource_descriptors(formatted_name).each do |element|
@@ -318,11 +316,12 @@ module Google
318
316
  filter: nil,
319
317
  page_size: nil,
320
318
  options: nil
321
- req = Google::Monitoring::V3::ListMonitoredResourceDescriptorsRequest.new({
319
+ req = {
322
320
  name: name,
323
321
  filter: filter,
324
322
  page_size: page_size
325
- }.delete_if { |_, v| v.nil? })
323
+ }.delete_if { |_, v| v.nil? }
324
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::ListMonitoredResourceDescriptorsRequest)
326
325
  @list_monitored_resource_descriptors.call(req, options)
327
326
  end
328
327
 
@@ -339,20 +338,19 @@ module Google
339
338
  # @return [Google::Api::MonitoredResourceDescriptor]
340
339
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
341
340
  # @example
342
- # require "google/cloud/monitoring/v3/metric_service_client"
341
+ # require "google/cloud/monitoring/v3"
343
342
  #
344
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
345
- #
346
- # metric_service_client = MetricServiceClient.new
347
- # formatted_name = MetricServiceClient.monitored_resource_descriptor_path("[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
343
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
344
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.monitored_resource_descriptor_path("[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
348
345
  # response = metric_service_client.get_monitored_resource_descriptor(formatted_name)
349
346
 
350
347
  def get_monitored_resource_descriptor \
351
348
  name,
352
349
  options: nil
353
- req = Google::Monitoring::V3::GetMonitoredResourceDescriptorRequest.new({
350
+ req = {
354
351
  name: name
355
- }.delete_if { |_, v| v.nil? })
352
+ }.delete_if { |_, v| v.nil? }
353
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::GetMonitoredResourceDescriptorRequest)
356
354
  @get_monitored_resource_descriptor.call(req, options)
357
355
  end
358
356
 
@@ -364,10 +362,10 @@ module Google
364
362
  # @param filter [String]
365
363
  # If this field is empty, all custom and
366
364
  # system-defined metric descriptors are returned.
367
- # Otherwise, the {filter}[https://cloud.google.com/monitoring/api/v3/filters]
365
+ # Otherwise, the [filter](https://cloud.google.com/monitoring/api/v3/filters)
368
366
  # specifies which metric descriptors are to be
369
367
  # returned. For example, the following filter matches all
370
- # {custom metrics}[https://cloud.google.com/monitoring/custom-metrics]:
368
+ # [custom metrics](https://cloud.google.com/monitoring/custom-metrics):
371
369
  #
372
370
  # metric.type = starts_with("custom.googleapis.com/")
373
371
  # @param page_size [Integer]
@@ -386,12 +384,10 @@ module Google
386
384
  # object.
387
385
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
388
386
  # @example
389
- # require "google/cloud/monitoring/v3/metric_service_client"
390
- #
391
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
387
+ # require "google/cloud/monitoring/v3"
392
388
  #
393
- # metric_service_client = MetricServiceClient.new
394
- # formatted_name = MetricServiceClient.project_path("[PROJECT]")
389
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
390
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path("[PROJECT]")
395
391
  #
396
392
  # # Iterate over all results.
397
393
  # metric_service_client.list_metric_descriptors(formatted_name).each do |element|
@@ -411,11 +407,12 @@ module Google
411
407
  filter: nil,
412
408
  page_size: nil,
413
409
  options: nil
414
- req = Google::Monitoring::V3::ListMetricDescriptorsRequest.new({
410
+ req = {
415
411
  name: name,
416
412
  filter: filter,
417
413
  page_size: page_size
418
- }.delete_if { |_, v| v.nil? })
414
+ }.delete_if { |_, v| v.nil? }
415
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::ListMetricDescriptorsRequest)
419
416
  @list_metric_descriptors.call(req, options)
420
417
  end
421
418
 
@@ -432,62 +429,61 @@ module Google
432
429
  # @return [Google::Api::MetricDescriptor]
433
430
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
434
431
  # @example
435
- # require "google/cloud/monitoring/v3/metric_service_client"
432
+ # require "google/cloud/monitoring/v3"
436
433
  #
437
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
438
- #
439
- # metric_service_client = MetricServiceClient.new
440
- # formatted_name = MetricServiceClient.metric_descriptor_path("[PROJECT]", "[METRIC_DESCRIPTOR]")
434
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
435
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.metric_descriptor_path("[PROJECT]", "[METRIC_DESCRIPTOR]")
441
436
  # response = metric_service_client.get_metric_descriptor(formatted_name)
442
437
 
443
438
  def get_metric_descriptor \
444
439
  name,
445
440
  options: nil
446
- req = Google::Monitoring::V3::GetMetricDescriptorRequest.new({
441
+ req = {
447
442
  name: name
448
- }.delete_if { |_, v| v.nil? })
443
+ }.delete_if { |_, v| v.nil? }
444
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::GetMetricDescriptorRequest)
449
445
  @get_metric_descriptor.call(req, options)
450
446
  end
451
447
 
452
448
  # Creates a new metric descriptor.
453
449
  # User-created metric descriptors define
454
- # {custom metrics}[https://cloud.google.com/monitoring/custom-metrics].
450
+ # [custom metrics](https://cloud.google.com/monitoring/custom-metrics).
455
451
  #
456
452
  # @param name [String]
457
453
  # The project on which to execute the request. The format is
458
454
  # +"projects/{project_id_or_number}"+.
459
- # @param metric_descriptor [Google::Api::MetricDescriptor]
460
- # The new {custom metric}[https://cloud.google.com/monitoring/custom-metrics]
455
+ # @param metric_descriptor [Google::Api::MetricDescriptor | Hash]
456
+ # The new [custom metric](https://cloud.google.com/monitoring/custom-metrics)
461
457
  # descriptor.
458
+ # A hash of the same form as `Google::Api::MetricDescriptor`
459
+ # can also be provided.
462
460
  # @param options [Google::Gax::CallOptions]
463
461
  # Overrides the default settings for this call, e.g, timeout,
464
462
  # retries, etc.
465
463
  # @return [Google::Api::MetricDescriptor]
466
464
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
467
465
  # @example
468
- # require "google/cloud/monitoring/v3/metric_service_client"
469
- #
470
- # MetricDescriptor = Google::Api::MetricDescriptor
471
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
466
+ # require "google/cloud/monitoring/v3"
472
467
  #
473
- # metric_service_client = MetricServiceClient.new
474
- # formatted_name = MetricServiceClient.project_path("[PROJECT]")
475
- # metric_descriptor = MetricDescriptor.new
468
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
469
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path("[PROJECT]")
470
+ # metric_descriptor = {}
476
471
  # response = metric_service_client.create_metric_descriptor(formatted_name, metric_descriptor)
477
472
 
478
473
  def create_metric_descriptor \
479
474
  name,
480
475
  metric_descriptor,
481
476
  options: nil
482
- req = Google::Monitoring::V3::CreateMetricDescriptorRequest.new({
477
+ req = {
483
478
  name: name,
484
479
  metric_descriptor: metric_descriptor
485
- }.delete_if { |_, v| v.nil? })
480
+ }.delete_if { |_, v| v.nil? }
481
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::CreateMetricDescriptorRequest)
486
482
  @create_metric_descriptor.call(req, options)
487
483
  end
488
484
 
489
485
  # Deletes a metric descriptor. Only user-created
490
- # {custom metrics}[https://cloud.google.com/monitoring/custom-metrics] can be deleted.
486
+ # [custom metrics](https://cloud.google.com/monitoring/custom-metrics) can be deleted.
491
487
  #
492
488
  # @param name [String]
493
489
  # The metric descriptor on which to execute the request. The format is
@@ -499,20 +495,19 @@ module Google
499
495
  # retries, etc.
500
496
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
501
497
  # @example
502
- # require "google/cloud/monitoring/v3/metric_service_client"
498
+ # require "google/cloud/monitoring/v3"
503
499
  #
504
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
505
- #
506
- # metric_service_client = MetricServiceClient.new
507
- # formatted_name = MetricServiceClient.metric_descriptor_path("[PROJECT]", "[METRIC_DESCRIPTOR]")
500
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
501
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.metric_descriptor_path("[PROJECT]", "[METRIC_DESCRIPTOR]")
508
502
  # metric_service_client.delete_metric_descriptor(formatted_name)
509
503
 
510
504
  def delete_metric_descriptor \
511
505
  name,
512
506
  options: nil
513
- req = Google::Monitoring::V3::DeleteMetricDescriptorRequest.new({
507
+ req = {
514
508
  name: name
515
- }.delete_if { |_, v| v.nil? })
509
+ }.delete_if { |_, v| v.nil? }
510
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::DeleteMetricDescriptorRequest)
516
511
  @delete_metric_descriptor.call(req, options)
517
512
  nil
518
513
  end
@@ -523,23 +518,27 @@ module Google
523
518
  # The project on which to execute the request. The format is
524
519
  # "projects/{project_id_or_number}".
525
520
  # @param filter [String]
526
- # A {monitoring filter}[https://cloud.google.com/monitoring/api/v3/filters] that specifies which time
521
+ # A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies which time
527
522
  # series should be returned. The filter must specify a single metric type,
528
523
  # and can additionally specify metric labels and other information. For
529
524
  # example:
530
525
  #
531
526
  # metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND
532
527
  # metric.label.instance_name = "my-instance-name"
533
- # @param interval [Google::Monitoring::V3::TimeInterval]
528
+ # @param interval [Google::Monitoring::V3::TimeInterval | Hash]
534
529
  # The time interval for which results should be returned. Only time series
535
530
  # that contain data points in the specified interval are included
536
531
  # in the response.
532
+ # A hash of the same form as `Google::Monitoring::V3::TimeInterval`
533
+ # can also be provided.
537
534
  # @param view [Google::Monitoring::V3::ListTimeSeriesRequest::TimeSeriesView]
538
535
  # Specifies which information is returned about the time series.
539
- # @param aggregation [Google::Monitoring::V3::Aggregation]
536
+ # @param aggregation [Google::Monitoring::V3::Aggregation | Hash]
540
537
  # By default, the raw time series data is returned.
541
538
  # Use this field to combine multiple time series for different
542
539
  # views of the data.
540
+ # A hash of the same form as `Google::Monitoring::V3::Aggregation`
541
+ # can also be provided.
543
542
  # @param order_by [String]
544
543
  # Specifies the order in which the points of the time series should
545
544
  # be returned. By default, results are not ordered. Currently,
@@ -560,17 +559,13 @@ module Google
560
559
  # object.
561
560
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
562
561
  # @example
563
- # require "google/cloud/monitoring/v3/metric_service_client"
564
- #
565
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
566
- # TimeInterval = Google::Monitoring::V3::TimeInterval
567
- # TimeSeriesView = Google::Monitoring::V3::ListTimeSeriesRequest::TimeSeriesView
562
+ # require "google/cloud/monitoring/v3"
568
563
  #
569
- # metric_service_client = MetricServiceClient.new
570
- # formatted_name = MetricServiceClient.project_path("[PROJECT]")
564
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
565
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path("[PROJECT]")
571
566
  # filter = ''
572
- # interval = TimeInterval.new
573
- # view = TimeSeriesView::FULL
567
+ # interval = {}
568
+ # view = :FULL
574
569
  #
575
570
  # # Iterate over all results.
576
571
  # metric_service_client.list_time_series(formatted_name, filter, interval, view).each do |element|
@@ -594,7 +589,7 @@ module Google
594
589
  order_by: nil,
595
590
  page_size: nil,
596
591
  options: nil
597
- req = Google::Monitoring::V3::ListTimeSeriesRequest.new({
592
+ req = {
598
593
  name: name,
599
594
  filter: filter,
600
595
  interval: interval,
@@ -602,7 +597,8 @@ module Google
602
597
  aggregation: aggregation,
603
598
  order_by: order_by,
604
599
  page_size: page_size
605
- }.delete_if { |_, v| v.nil? })
600
+ }.delete_if { |_, v| v.nil? }
601
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::ListTimeSeriesRequest)
606
602
  @list_time_series.call(req, options)
607
603
  end
608
604
 
@@ -614,23 +610,23 @@ module Google
614
610
  # @param name [String]
615
611
  # The project on which to execute the request. The format is
616
612
  # +"projects/{project_id_or_number}"+.
617
- # @param time_series [Array<Google::Monitoring::V3::TimeSeries>]
613
+ # @param time_series [Array<Google::Monitoring::V3::TimeSeries | Hash>]
618
614
  # The new data to be added to a list of time series.
619
615
  # Adds at most one data point to each of several time series. The new data
620
616
  # point must be more recent than any other point in its time series. Each
621
617
  # +TimeSeries+ value must fully specify a unique time series by supplying
622
618
  # all label values for the metric and the monitored resource.
619
+ # A hash of the same form as `Google::Monitoring::V3::TimeSeries`
620
+ # can also be provided.
623
621
  # @param options [Google::Gax::CallOptions]
624
622
  # Overrides the default settings for this call, e.g, timeout,
625
623
  # retries, etc.
626
624
  # @raise [Google::Gax::GaxError] if the RPC is aborted.
627
625
  # @example
628
- # require "google/cloud/monitoring/v3/metric_service_client"
629
- #
630
- # MetricServiceClient = Google::Cloud::Monitoring::V3::MetricServiceClient
626
+ # require "google/cloud/monitoring/v3"
631
627
  #
632
- # metric_service_client = MetricServiceClient.new
633
- # formatted_name = MetricServiceClient.project_path("[PROJECT]")
628
+ # metric_service_client = Google::Cloud::Monitoring::V3::Metric.new
629
+ # formatted_name = Google::Cloud::Monitoring::V3::MetricServiceClient.project_path("[PROJECT]")
634
630
  # time_series = []
635
631
  # metric_service_client.create_time_series(formatted_name, time_series)
636
632
 
@@ -638,10 +634,11 @@ module Google
638
634
  name,
639
635
  time_series,
640
636
  options: nil
641
- req = Google::Monitoring::V3::CreateTimeSeriesRequest.new({
637
+ req = {
642
638
  name: name,
643
639
  time_series: time_series
644
- }.delete_if { |_, v| v.nil? })
640
+ }.delete_if { |_, v| v.nil? }
641
+ req = Google::Gax::to_proto(req, Google::Monitoring::V3::CreateTimeSeriesRequest)
645
642
  @create_time_series.call(req, options)
646
643
  nil
647
644
  end