google-cloud-service_control-v1 0.2.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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.