google-cloud-service_control-v1 0.2.0 → 0.4.1

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.
@@ -5,6 +5,7 @@ require 'google/protobuf'
5
5
 
6
6
  require 'google/api/annotations_pb'
7
7
  require 'google/api/servicecontrol/v1/metric_value_pb'
8
+ require 'google/rpc/status_pb'
8
9
  require 'google/api/client_pb'
9
10
  Google::Protobuf::DescriptorPool.generated_pool.build do
10
11
  add_file("google/api/servicecontrol/v1/quota_controller.proto", :syntax => :proto3) do
@@ -39,6 +40,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
39
40
  optional :code, :enum, 1, "google.api.servicecontrol.v1.QuotaError.Code"
40
41
  optional :subject, :string, 2
41
42
  optional :description, :string, 3
43
+ optional :status, :message, 4, "google.rpc.Status"
42
44
  end
43
45
  add_enum "google.api.servicecontrol.v1.QuotaError.Code" do
44
46
  value :UNSPECIFIED, 0
@@ -4,11 +4,11 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
7
8
  require 'google/api/servicecontrol/v1/check_error_pb'
8
9
  require 'google/api/servicecontrol/v1/operation_pb'
9
10
  require 'google/protobuf/timestamp_pb'
10
11
  require 'google/rpc/status_pb'
11
- require 'google/api/client_pb'
12
12
  Google::Protobuf::DescriptorPool.generated_pool.build do
13
13
  add_file("google/api/servicecontrol/v1/service_controller.proto", :syntax => :proto3) do
14
14
  add_message "google.api.servicecontrol.v1.CheckRequest" do
@@ -47,7 +47,8 @@ module Google
47
47
  # propagation, therefore callers MUST NOT depend on the `Check` method having
48
48
  # the latest policy information.
49
49
  #
50
- # NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has the size limit of 64KB.
50
+ # NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has
51
+ # the size limit (wire-format byte size) of 1MB.
51
52
  #
52
53
  # This method requires the `servicemanagement.services.check` permission
53
54
  # on the specified service. For more information, see
@@ -62,8 +63,8 @@ module Google
62
63
  # the aggregation time window to avoid data loss risk more than 0.01%
63
64
  # for business and compliance reasons.
64
65
  #
65
- # NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has the size limit (wire-format byte size) of
66
- # 1MB.
66
+ # NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has
67
+ # the size limit (wire-format byte size) of 1MB.
67
68
  #
68
69
  # This method requires the `servicemanagement.services.report` permission
69
70
  # on the specified service. For more information, see
@@ -61,7 +61,7 @@ module Google
61
61
  parent_config = while namespace.any?
62
62
  parent_name = namespace.join "::"
63
63
  parent_const = const_get parent_name
64
- break parent_const.configure if parent_const&.respond_to? :configure
64
+ break parent_const.configure if parent_const.respond_to? :configure
65
65
  namespace.pop
66
66
  end
67
67
  default_config = Client::Configuration.new parent_config
@@ -132,9 +132,9 @@ module Google
132
132
  enable_self_signed_jwt = @config.scope == Client.configure.scope &&
133
133
  @config.endpoint == Client.configure.endpoint &&
134
134
  !@config.endpoint.split(".").first.include?("-")
135
- credentials ||= Credentials.default scope: @config.scope,
135
+ credentials ||= Credentials.default scope: @config.scope,
136
136
  enable_self_signed_jwt: enable_self_signed_jwt
137
- if credentials.is_a?(String) || credentials.is_a?(Hash)
137
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
138
138
  credentials = Credentials.new credentials, scope: @config.scope
139
139
  end
140
140
  @quota_project_id = @config.quota_project
@@ -328,7 +328,7 @@ module Google
328
328
  config_attr :scope, nil, ::String, ::Array, nil
329
329
  config_attr :lib_name, nil, ::String, nil
330
330
  config_attr :lib_version, nil, ::String, nil
331
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
331
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
332
332
  config_attr :interceptors, nil, ::Array, nil
333
333
  config_attr :timeout, nil, ::Numeric, nil
334
334
  config_attr :metadata, nil, ::Hash, nil
@@ -349,7 +349,7 @@ module Google
349
349
  def rpcs
350
350
  @rpcs ||= begin
351
351
  parent_rpcs = nil
352
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
352
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
353
353
  Rpcs.new parent_rpcs
354
354
  end
355
355
  end
@@ -380,7 +380,7 @@ module Google
380
380
 
381
381
  # @private
382
382
  def initialize parent_rpcs = nil
383
- allocate_quota_config = parent_rpcs&.allocate_quota if parent_rpcs&.respond_to? :allocate_quota
383
+ allocate_quota_config = parent_rpcs.allocate_quota if parent_rpcs.respond_to? :allocate_quota
384
384
  @allocate_quota = ::Gapic::Config::Method.new allocate_quota_config
385
385
 
386
386
  yield self if block_given?
@@ -61,11 +61,18 @@ module Google
61
61
  parent_config = while namespace.any?
62
62
  parent_name = namespace.join "::"
63
63
  parent_const = const_get parent_name
64
- break parent_const.configure if parent_const&.respond_to? :configure
64
+ break parent_const.configure if parent_const.respond_to? :configure
65
65
  namespace.pop
66
66
  end
67
67
  default_config = Client::Configuration.new parent_config
68
68
 
69
+ default_config.rpcs.check.timeout = 5.0
70
+ default_config.rpcs.check.retry_policy = {
71
+ initial_delay: 1.0, max_delay: 10.0, multiplier: 1.3, retry_codes: [14]
72
+ }
73
+
74
+ default_config.rpcs.report.timeout = 16.0
75
+
69
76
  default_config
70
77
  end
71
78
  yield @configure if block_given?
@@ -132,9 +139,9 @@ module Google
132
139
  enable_self_signed_jwt = @config.scope == Client.configure.scope &&
133
140
  @config.endpoint == Client.configure.endpoint &&
134
141
  !@config.endpoint.split(".").first.include?("-")
135
- credentials ||= Credentials.default scope: @config.scope,
142
+ credentials ||= Credentials.default scope: @config.scope,
136
143
  enable_self_signed_jwt: enable_self_signed_jwt
137
- if credentials.is_a?(String) || credentials.is_a?(Hash)
144
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
138
145
  credentials = Credentials.new credentials, scope: @config.scope
139
146
  end
140
147
  @quota_project_id = @config.quota_project
@@ -163,7 +170,8 @@ module Google
163
170
  # propagation, therefore callers MUST NOT depend on the `Check` method having
164
171
  # the latest policy information.
165
172
  #
166
- # NOTE: the {::Google::Cloud::ServiceControl::V1::CheckRequest CheckRequest} has the size limit of 64KB.
173
+ # NOTE: the {::Google::Cloud::ServiceControl::V1::CheckRequest CheckRequest} has
174
+ # the size limit (wire-format byte size) of 1MB.
167
175
  #
168
176
  # This method requires the `servicemanagement.services.check` permission
169
177
  # on the specified service. For more information, see
@@ -255,8 +263,8 @@ module Google
255
263
  # the aggregation time window to avoid data loss risk more than 0.01%
256
264
  # for business and compliance reasons.
257
265
  #
258
- # NOTE: the {::Google::Cloud::ServiceControl::V1::ReportRequest ReportRequest} has the size limit (wire-format byte size) of
259
- # 1MB.
266
+ # NOTE: the {::Google::Cloud::ServiceControl::V1::ReportRequest ReportRequest} has
267
+ # the size limit (wire-format byte size) of 1MB.
260
268
  #
261
269
  # This method requires the `servicemanagement.services.report` permission
262
270
  # on the specified service. For more information, see
@@ -294,7 +302,8 @@ module Google
294
302
  #
295
303
  # There is no limit on the number of operations in the same ReportRequest,
296
304
  # however the ReportRequest size should be no larger than 1MB. See
297
- # {::Google::Cloud::ServiceControl::V1::ReportResponse#report_errors ReportResponse.report_errors} for partial failure behavior.
305
+ # {::Google::Cloud::ServiceControl::V1::ReportResponse#report_errors ReportResponse.report_errors}
306
+ # for partial failure behavior.
298
307
  # @param service_config_id [::String]
299
308
  # Specifies which version of service config should be used to process the
300
309
  # request.
@@ -439,7 +448,7 @@ module Google
439
448
  config_attr :scope, nil, ::String, ::Array, nil
440
449
  config_attr :lib_name, nil, ::String, nil
441
450
  config_attr :lib_version, nil, ::String, nil
442
- config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
451
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution" => 1 }, ::Hash, nil)
443
452
  config_attr :interceptors, nil, ::Array, nil
444
453
  config_attr :timeout, nil, ::Numeric, nil
445
454
  config_attr :metadata, nil, ::Hash, nil
@@ -460,7 +469,7 @@ module Google
460
469
  def rpcs
461
470
  @rpcs ||= begin
462
471
  parent_rpcs = nil
463
- parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
472
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
464
473
  Rpcs.new parent_rpcs
465
474
  end
466
475
  end
@@ -496,9 +505,9 @@ module Google
496
505
 
497
506
  # @private
498
507
  def initialize parent_rpcs = nil
499
- check_config = parent_rpcs&.check if parent_rpcs&.respond_to? :check
508
+ check_config = parent_rpcs.check if parent_rpcs.respond_to? :check
500
509
  @check = ::Gapic::Config::Method.new check_config
501
- report_config = parent_rpcs&.report if parent_rpcs&.respond_to? :report
510
+ report_config = parent_rpcs.report if parent_rpcs.respond_to? :report
502
511
  @report = ::Gapic::Config::Method.new report_config
503
512
 
504
513
  yield self if block_given?
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module ServiceControl
23
23
  module V1
24
- VERSION = "0.2.0"
24
+ VERSION = "0.4.1"
25
25
  end
26
26
  end
27
27
  end
@@ -0,0 +1,225 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # `Distribution` contains summary statistics for a population of values. It
23
+ # optionally contains a histogram representing the distribution of those values
24
+ # across a set of buckets.
25
+ #
26
+ # The summary statistics are the count, mean, sum of the squared deviation from
27
+ # the mean, the minimum, and the maximum of the set of population of values.
28
+ # The histogram is based on a sequence of buckets and gives a count of values
29
+ # that fall into each bucket. The boundaries of the buckets are given either
30
+ # explicitly or by formulas for buckets of fixed or exponentially increasing
31
+ # widths.
32
+ #
33
+ # Although it is not forbidden, it is generally a bad idea to include
34
+ # non-finite values (infinities or NaNs) in the population of values, as this
35
+ # will render the `mean` and `sum_of_squared_deviation` fields meaningless.
36
+ # @!attribute [rw] count
37
+ # @return [::Integer]
38
+ # The number of values in the population. Must be non-negative. This value
39
+ # must equal the sum of the values in `bucket_counts` if a histogram is
40
+ # provided.
41
+ # @!attribute [rw] mean
42
+ # @return [::Float]
43
+ # The arithmetic mean of the values in the population. If `count` is zero
44
+ # then this field must be zero.
45
+ # @!attribute [rw] sum_of_squared_deviation
46
+ # @return [::Float]
47
+ # The sum of squared deviations from the mean of the values in the
48
+ # population. For values x_i this is:
49
+ #
50
+ # Sum[i=1..n]((x_i - mean)^2)
51
+ #
52
+ # Knuth, "The Art of Computer Programming", Vol. 2, page 232, 3rd edition
53
+ # describes Welford's method for accumulating this sum in one pass.
54
+ #
55
+ # If `count` is zero then this field must be zero.
56
+ # @!attribute [rw] range
57
+ # @return [::Google::Api::Distribution::Range]
58
+ # If specified, contains the range of the population values. The field
59
+ # must not be present if the `count` is zero.
60
+ # @!attribute [rw] bucket_options
61
+ # @return [::Google::Api::Distribution::BucketOptions]
62
+ # Defines the histogram bucket boundaries. If the distribution does not
63
+ # contain a histogram, then omit this field.
64
+ # @!attribute [rw] bucket_counts
65
+ # @return [::Array<::Integer>]
66
+ # The number of values in each bucket of the histogram, as described in
67
+ # `bucket_options`. If the distribution does not have a histogram, then omit
68
+ # this field. If there is a histogram, then the sum of the values in
69
+ # `bucket_counts` must equal the value in the `count` field of the
70
+ # distribution.
71
+ #
72
+ # If present, `bucket_counts` should contain N values, where N is the number
73
+ # of buckets specified in `bucket_options`. If you supply fewer than N
74
+ # values, the remaining values are assumed to be 0.
75
+ #
76
+ # The order of the values in `bucket_counts` follows the bucket numbering
77
+ # schemes described for the three bucket types. The first value must be the
78
+ # count for the underflow bucket (number 0). The next N-2 values are the
79
+ # counts for the finite buckets (number 1 through N-2). The N'th value in
80
+ # `bucket_counts` is the count for the overflow bucket (number N-1).
81
+ # @!attribute [rw] exemplars
82
+ # @return [::Array<::Google::Api::Distribution::Exemplar>]
83
+ # Must be in increasing order of `value` field.
84
+ class Distribution
85
+ include ::Google::Protobuf::MessageExts
86
+ extend ::Google::Protobuf::MessageExts::ClassMethods
87
+
88
+ # The range of the population values.
89
+ # @!attribute [rw] min
90
+ # @return [::Float]
91
+ # The minimum of the population values.
92
+ # @!attribute [rw] max
93
+ # @return [::Float]
94
+ # The maximum of the population values.
95
+ class Range
96
+ include ::Google::Protobuf::MessageExts
97
+ extend ::Google::Protobuf::MessageExts::ClassMethods
98
+ end
99
+
100
+ # `BucketOptions` describes the bucket boundaries used to create a histogram
101
+ # for the distribution. The buckets can be in a linear sequence, an
102
+ # exponential sequence, or each bucket can be specified explicitly.
103
+ # `BucketOptions` does not include the number of values in each bucket.
104
+ #
105
+ # A bucket has an inclusive lower bound and exclusive upper bound for the
106
+ # values that are counted for that bucket. The upper bound of a bucket must
107
+ # be strictly greater than the lower bound. The sequence of N buckets for a
108
+ # distribution consists of an underflow bucket (number 0), zero or more
109
+ # finite buckets (number 1 through N - 2) and an overflow bucket (number N -
110
+ # 1). The buckets are contiguous: the lower bound of bucket i (i > 0) is the
111
+ # same as the upper bound of bucket i - 1. The buckets span the whole range
112
+ # of finite values: lower bound of the underflow bucket is -infinity and the
113
+ # upper bound of the overflow bucket is +infinity. The finite buckets are
114
+ # so-called because both bounds are finite.
115
+ # @!attribute [rw] linear_buckets
116
+ # @return [::Google::Api::Distribution::BucketOptions::Linear]
117
+ # The linear bucket.
118
+ # @!attribute [rw] exponential_buckets
119
+ # @return [::Google::Api::Distribution::BucketOptions::Exponential]
120
+ # The exponential buckets.
121
+ # @!attribute [rw] explicit_buckets
122
+ # @return [::Google::Api::Distribution::BucketOptions::Explicit]
123
+ # The explicit buckets.
124
+ class BucketOptions
125
+ include ::Google::Protobuf::MessageExts
126
+ extend ::Google::Protobuf::MessageExts::ClassMethods
127
+
128
+ # Specifies a linear sequence of buckets that all have the same width
129
+ # (except overflow and underflow). Each bucket represents a constant
130
+ # absolute uncertainty on the specific value in the bucket.
131
+ #
132
+ # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the
133
+ # following boundaries:
134
+ #
135
+ # Upper bound (0 <= i < N-1): offset + (width * i).
136
+ # Lower bound (1 <= i < N): offset + (width * (i - 1)).
137
+ # @!attribute [rw] num_finite_buckets
138
+ # @return [::Integer]
139
+ # Must be greater than 0.
140
+ # @!attribute [rw] width
141
+ # @return [::Float]
142
+ # Must be greater than 0.
143
+ # @!attribute [rw] offset
144
+ # @return [::Float]
145
+ # Lower bound of the first bucket.
146
+ class Linear
147
+ include ::Google::Protobuf::MessageExts
148
+ extend ::Google::Protobuf::MessageExts::ClassMethods
149
+ end
150
+
151
+ # Specifies an exponential sequence of buckets that have a width that is
152
+ # proportional to the value of the lower bound. Each bucket represents a
153
+ # constant relative uncertainty on a specific value in the bucket.
154
+ #
155
+ # There are `num_finite_buckets + 2` (= N) buckets. Bucket `i` has the
156
+ # following boundaries:
157
+ #
158
+ # Upper bound (0 <= i < N-1): scale * (growth_factor ^ i).
159
+ # Lower bound (1 <= i < N): scale * (growth_factor ^ (i - 1)).
160
+ # @!attribute [rw] num_finite_buckets
161
+ # @return [::Integer]
162
+ # Must be greater than 0.
163
+ # @!attribute [rw] growth_factor
164
+ # @return [::Float]
165
+ # Must be greater than 1.
166
+ # @!attribute [rw] scale
167
+ # @return [::Float]
168
+ # Must be greater than 0.
169
+ class Exponential
170
+ include ::Google::Protobuf::MessageExts
171
+ extend ::Google::Protobuf::MessageExts::ClassMethods
172
+ end
173
+
174
+ # Specifies a set of buckets with arbitrary widths.
175
+ #
176
+ # There are `size(bounds) + 1` (= N) buckets. Bucket `i` has the following
177
+ # boundaries:
178
+ #
179
+ # Upper bound (0 <= i < N-1): bounds[i]
180
+ # Lower bound (1 <= i < N); bounds[i - 1]
181
+ #
182
+ # The `bounds` field must contain at least one element. If `bounds` has
183
+ # only one element, then there are no finite buckets, and that single
184
+ # element is the common boundary of the overflow and underflow buckets.
185
+ # @!attribute [rw] bounds
186
+ # @return [::Array<::Float>]
187
+ # The values must be monotonically increasing.
188
+ class Explicit
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+ end
193
+
194
+ # Exemplars are example points that may be used to annotate aggregated
195
+ # distribution values. They are metadata that gives information about a
196
+ # particular value added to a Distribution bucket, such as a trace ID that
197
+ # was active when a value was added. They may contain further information,
198
+ # such as a example values and timestamps, origin, etc.
199
+ # @!attribute [rw] value
200
+ # @return [::Float]
201
+ # Value of the exemplar point. This value determines to which bucket the
202
+ # exemplar belongs.
203
+ # @!attribute [rw] timestamp
204
+ # @return [::Google::Protobuf::Timestamp]
205
+ # The observation (sampling) time of the above value.
206
+ # @!attribute [rw] attachments
207
+ # @return [::Array<::Google::Protobuf::Any>]
208
+ # Contextual information about the example value. Examples are:
209
+ #
210
+ # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
211
+ #
212
+ # Literal string: type.googleapis.com/google.protobuf.StringValue
213
+ #
214
+ # Labels dropped during aggregation:
215
+ # type.googleapis.com/google.monitoring.v3.DroppedLabels
216
+ #
217
+ # There may be only a single attachment of any given message type in a
218
+ # single exemplar, and this is enforced by the system.
219
+ class Exemplar
220
+ include ::Google::Protobuf::MessageExts
221
+ extend ::Google::Protobuf::MessageExts::ClassMethods
222
+ end
223
+ end
224
+ end
225
+ end
@@ -70,6 +70,9 @@ module Google
70
70
  # @!attribute [rw] explicit_buckets
71
71
  # @return [::Google::Cloud::ServiceControl::V1::Distribution::ExplicitBuckets]
72
72
  # Buckets with arbitrary user-provided width.
73
+ # @!attribute [rw] exemplars
74
+ # @return [::Array<::Google::Api::Distribution::Exemplar>]
75
+ # Example points. Must be in increasing order of `value` field.
73
76
  class Distribution
74
77
  include ::Google::Protobuf::MessageExts
75
78
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -31,7 +31,7 @@ module Google
31
31
  # The time the event described by the log entry occurred. If
32
32
  # omitted, defaults to operation start time.
33
33
  # @!attribute [rw] severity
34
- # @return [::Google::Logging::Type::LogSeverity]
34
+ # @return [::Google::Cloud::Logging::Type::LogSeverity]
35
35
  # The severity of the log entry. The default value is
36
36
  # `LogSeverity.DEFAULT`.
37
37
  # @!attribute [rw] http_request
@@ -33,11 +33,13 @@ module Google
33
33
  # The start of the time period over which this metric value's measurement
34
34
  # applies. The time period has different semantics for different metric
35
35
  # types (cumulative, delta, and gauge). See the metric definition
36
- # documentation in the service configuration for details.
36
+ # documentation in the service configuration for details. If not specified,
37
+ # {::Google::Cloud::ServiceControl::V1::Operation#start_time google.api.servicecontrol.v1.Operation.start_time} will be used.
37
38
  # @!attribute [rw] end_time
38
39
  # @return [::Google::Protobuf::Timestamp]
39
40
  # The end of the time period over which this metric value's measurement
40
- # applies.
41
+ # applies. If not specified,
42
+ # {::Google::Cloud::ServiceControl::V1::Operation#end_time google.api.servicecontrol.v1.Operation.end_time} will be used.
41
43
  # @!attribute [rw] bool_value
42
44
  # @return [::Boolean]
43
45
  # A boolean value.