blob: 335645456cdca3dacfd6ccc17a56f71391278295 [file] [log] [blame]
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070075<h1><a href="servicecontrol_v1.html">Service Control API</a> . <a href="servicecontrol_v1.services.html">services</a></h1>
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070076<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#allocateQuota">allocateQuota(serviceName, body=None, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040079<p class="firstline">Attempts to allocate quota for the specified consumer. It should be called</p>
80<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070081 <code><a href="#check">check(serviceName, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070082<p class="firstline">Checks whether an operation on a service should be allowed to proceed</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040083<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070084 <code><a href="#report">report(serviceName, body=None, x__xgafv=None)</a></code></p>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -080085<p class="firstline">Reports operation results to Google Service Control, such as logs and</p>
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070086<h3>Method Details</h3>
87<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -070088 <code class="details" id="allocateQuota">allocateQuota(serviceName, body=None, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040089 <pre>Attempts to allocate quota for the specified consumer. It should be called
90before the operation is executed.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070091
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040092This method requires the `servicemanagement.services.quota`
93permission on the specified service. For more information, see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070094[Cloud IAM](https://cloud.google.com/iam).
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -070095
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070096**NOTE:** The client **must** fail-open on server errors `INTERNAL`,
97`UNKNOWN`, `DEADLINE_EXCEEDED`, and `UNAVAILABLE`. To ensure system
98reliability, the server may inject these errors to prohibit any hard
99dependency on the quota functionality.
Sai Cheemalapatie833b792017-03-24 15:06:46 -0700100
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700101Args:
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400102 serviceName: string, Name of the service as specified in the service configuration. For example,
Bu Sun Kim65020912020-05-20 12:08:20 -0700103`&quot;pubsub.googleapis.com&quot;`.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700104
105See google.api.Service for the definition of a service name. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700106 body: object, The request body.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700107 The object takes the form of:
108
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400109{ # Request message for the AllocateQuota method.
Bu Sun Kim65020912020-05-20 12:08:20 -0700110 &quot;allocateOperation&quot;: { # Represents information regarding a quota operation. # Operation that describes the quota allocation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700111 &quot;consumerId&quot;: &quot;A String&quot;, # Identity of the consumer for whom this quota operation is being performed.
112 #
113 # This can be in one of the following formats:
114 # project:&lt;project_id&gt;,
115 # project_number:&lt;project_number&gt;,
116 # api_key:&lt;api_key&gt;.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700117 &quot;quotaMode&quot;: &quot;A String&quot;, # Quota mode for this operation.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700118 &quot;operationId&quot;: &quot;A String&quot;, # Identity of the operation. This is expected to be unique within the scope
119 # of the service that generated the operation, and guarantees idempotency in
120 # case of retries.
121 #
122 # In order to ensure best performance and latency in the Quota backends,
123 # operation_ids are optimally associated with time, so that related
124 # operations can be accessed fast in storage. For this reason, the
125 # recommended token for services that intend to operate at a high QPS is
126 # Unix time in nanos + UUID
127 &quot;methodName&quot;: &quot;A String&quot;, # Fully qualified name of the API method for which this quota operation is
128 # requested. This name is used for matching quota rules or metric rules and
129 # billing status rules defined in service configuration.
130 #
131 # This field should not be set if any of the following is true:
132 # (1) the quota operation is performed on non-API resources.
133 # (2) quota_metrics is set because the caller is doing quota override.
134 #
135 # Example of an RPC method name:
136 # google.example.library.v1.LibraryService.CreateShelf
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700137 &quot;labels&quot;: { # Labels describing the operation.
138 &quot;a_key&quot;: &quot;A String&quot;,
139 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700140 &quot;quotaMetrics&quot;: [ # Represents information about this operation. Each MetricValueSet
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700141 # corresponds to a metric defined in the service configuration.
142 # The data type used in the MetricValueSet must agree with
143 # the data type specified in the metric definition.
144 #
145 # Within a single operation, it is not allowed to have more than one
146 # MetricValue instances that have the same metric names and identical
147 # label value combinations. If a request has such duplicated MetricValue
148 # instances, the entire request is rejected with
149 # an invalid argument error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700150 #
151 # This field is mutually exclusive with method_name.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700152 { # Represents a set of metric values in the same metric.
153 # Each metric value in the set should have a unique combination of start time,
154 # end time, and label values.
Bu Sun Kim65020912020-05-20 12:08:20 -0700155 &quot;metricValues&quot;: [ # The values in this metric.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700156 { # Represents a single metric value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700157 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
158 # applies. The time period has different semantics for different metric
159 # types (cumulative, delta, and gauge). See the metric definition
160 # documentation in the service configuration for details.
Bu Sun Kim65020912020-05-20 12:08:20 -0700161 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -0700162 # points. It contains the size of the population of sample points plus
163 # additional optional information:
164 #
165 # - the arithmetic mean of the samples
166 # - the minimum and maximum of the samples
167 # - the sum-squared-deviation of the samples, used to compute variance
168 # - a histogram of the values of the sample points
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700169 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
170 # optional. If present, they must sum to the `count` value.
171 #
172 # The buckets are defined below in `bucket_option`. There are N buckets.
173 # `bucket_counts[0]` is the number of samples in the underflow bucket.
174 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
175 # in each of the finite buckets. And `bucket_counts[N] is the number
176 # of samples in the overflow bucket. See the comments of `bucket_option`
177 # below for more details.
178 #
179 # Any suffix of trailing zeros may be omitted.
180 &quot;A String&quot;,
181 ],
182 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
Bu Sun Kim65020912020-05-20 12:08:20 -0700183 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
Dan O'Mearadd494642020-05-01 07:42:23 -0700184 # Sum[i=1..count]((x_i - mean)^2)
185 # where each x_i is a sample values. If `count` is zero then this field
186 # must be zero, otherwise validation of the request fails.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700187 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
188 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
189 # the total number of buckets is `num_finite_buckets` + 2.
190 # See comments on `bucket_options` for details.
191 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
192 # [offset + (i-1) * width, offset + i * width)
193 # where i ranges from 1 to num_finite_buckets, inclusive.
194 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
195 # [offset + (i-1) * width, offset + i * width)
196 # where i ranges from 1 to num_finite_buckets, inclusive.
197 # Must be strictly positive.
198 },
199 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
200 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
201 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
202 # [scale * growth_factor^(i-1), scale * growth_factor^i)
203 # where i ranges from 1 to num_finite_buckets inclusive.
204 # Must be larger than 1.0.
205 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
206 # [scale * growth_factor^(i-1), scale * growth_factor^i)
207 # where i ranges from 1 to num_finite_buckets inclusive.
208 # Must be &gt; 0.
209 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
210 # the total number of buckets is `num_finite_buckets` + 2.
211 # See comments on `bucket_options` for details.
212 },
213 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
Bu Sun Kim65020912020-05-20 12:08:20 -0700214 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
Dan O'Mearadd494642020-05-01 07:42:23 -0700215 { # Exemplars are example points that may be used to annotate aggregated
216 # distribution values. They are metadata that gives information about a
217 # particular value added to a Distribution bucket, such as a trace ID that
218 # was active when a value was added. They may contain further information,
219 # such as a example values and timestamps, origin, etc.
Bu Sun Kim65020912020-05-20 12:08:20 -0700220 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
221 # exemplar belongs.
Bu Sun Kim65020912020-05-20 12:08:20 -0700222 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
Dan O'Mearadd494642020-05-01 07:42:23 -0700223 #
224 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
225 #
226 # Literal string: type.googleapis.com/google.protobuf.StringValue
227 #
228 # Labels dropped during aggregation:
229 # type.googleapis.com/google.monitoring.v3.DroppedLabels
230 #
231 # There may be only a single attachment of any given message type in a
232 # single exemplar, and this is enforced by the system.
233 {
Bu Sun Kim65020912020-05-20 12:08:20 -0700234 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -0700235 },
236 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700237 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
Dan O'Mearadd494642020-05-01 07:42:23 -0700238 },
239 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700240 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400241 # zero then this field must be zero.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700242 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
243 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
244 # buckets. Note that a list of length N-1 defines N buckets because
245 # of fenceposting. See comments on `bucket_options` for details.
246 #
247 # The i&#x27;th finite bucket covers the interval
248 # [bound[i-1], bound[i])
249 # where i ranges from 1 to bound_size() - 1. Note that there are no
250 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
251 # that special case the single bound defines the boundary between the
252 # underflow and overflow buckets.
253 #
254 # bucket number lower bound upper bound
255 # i == 0 (underflow) -inf bound[i]
256 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
257 # i == bound_size() (overflow) bound[i-1] +inf
258 3.14,
259 ],
260 },
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400261 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700262 &quot;labels&quot;: { # The labels describing the metric value.
263 # See comments on google.api.servicecontrol.v1.Operation.labels for
264 # the overriding relationship.
265 # Note that this map must not contain monitored resource labels.
266 &quot;a_key&quot;: &quot;A String&quot;,
267 },
268 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700269 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
270 # applies.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700271 &quot;boolValue&quot;: True or False, # A boolean value.
272 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
273 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
274 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
275 # The value must be between -999,999,999 and +999,999,999 inclusive.
276 # If `units` is positive, `nanos` must be positive or zero.
277 # If `units` is zero, `nanos` can be positive, zero, or negative.
278 # If `units` is negative, `nanos` must be negative or zero.
279 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
280 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
281 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
282 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
283 },
284 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400285 },
286 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700287 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400288 },
289 ],
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400290 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700291 &quot;serviceConfigId&quot;: &quot;A String&quot;, # Specifies which version of service configuration should be used to process
292 # the request. If unspecified or no matching version can be found, the latest
293 # one will be used.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400294 }
295
296 x__xgafv: string, V1 error format.
297 Allowed values
298 1 - v1 error format
299 2 - v2 error format
300
301Returns:
302 An object of the form:
303
304 { # Response message for the AllocateQuota method.
Bu Sun Kim65020912020-05-20 12:08:20 -0700305 &quot;allocateInfo&quot;: { # WARNING: DO NOT use this field until this warning message is removed.
306 &quot;unusedArguments&quot;: [ # A list of label keys that were unused by the server in processing the
307 # request. Thus, for similar requests repeated in a certain future time
308 # window, the caller can choose to ignore these labels in the requests
309 # to achieve better client-side cache hits and quota aggregation for rate
310 # quota. This field is not populated for allocation quota checks.
311 &quot;A String&quot;,
312 ],
313 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700314 &quot;operationId&quot;: &quot;A String&quot;, # The same operation_id value used in the AllocateQuotaRequest. Used for
315 # logging and diagnostics purposes.
Bu Sun Kim65020912020-05-20 12:08:20 -0700316 &quot;allocateErrors&quot;: [ # Indicates the decision of the allocate.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700317 { # Represents error information for QuotaOperation.
Bu Sun Kim65020912020-05-20 12:08:20 -0700318 &quot;subject&quot;: &quot;A String&quot;, # Subject to whom this error applies. See the specific enum for more details
319 # on this field. For example, &quot;clientip:&lt;ip address of client&gt;&quot; or
320 # &quot;project:&lt;Google developer project id&gt;&quot;.
Bu Sun Kim65020912020-05-20 12:08:20 -0700321 &quot;code&quot;: &quot;A String&quot;, # Error code.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700322 &quot;description&quot;: &quot;A String&quot;, # Free-form text that provides details on the cause of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700323 },
324 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700325 &quot;quotaMetrics&quot;: [ # Quota metrics to indicate the result of allocation. Depending on the
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400326 # request, one or more of the following metrics will be included:
327 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700328 # 1. Per quota group or per quota metric incremental usage will be specified
329 # using the following delta metric :
Bu Sun Kim65020912020-05-20 12:08:20 -0700330 # &quot;serviceruntime.googleapis.com/api/consumer/quota_used_count&quot;
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400331 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700332 # 2. The quota limit reached condition will be specified using the following
333 # boolean metric :
Bu Sun Kim65020912020-05-20 12:08:20 -0700334 # &quot;serviceruntime.googleapis.com/quota/exceeded&quot;
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400335 { # Represents a set of metric values in the same metric.
336 # Each metric value in the set should have a unique combination of start time,
337 # end time, and label values.
Bu Sun Kim65020912020-05-20 12:08:20 -0700338 &quot;metricValues&quot;: [ # The values in this metric.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400339 { # Represents a single metric value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700340 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
341 # applies. The time period has different semantics for different metric
342 # types (cumulative, delta, and gauge). See the metric definition
343 # documentation in the service configuration for details.
Bu Sun Kim65020912020-05-20 12:08:20 -0700344 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400345 # points. It contains the size of the population of sample points plus
346 # additional optional information:
347 #
348 # - the arithmetic mean of the samples
349 # - the minimum and maximum of the samples
350 # - the sum-squared-deviation of the samples, used to compute variance
351 # - a histogram of the values of the sample points
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700352 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
353 # optional. If present, they must sum to the `count` value.
354 #
355 # The buckets are defined below in `bucket_option`. There are N buckets.
356 # `bucket_counts[0]` is the number of samples in the underflow bucket.
357 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
358 # in each of the finite buckets. And `bucket_counts[N] is the number
359 # of samples in the overflow bucket. See the comments of `bucket_option`
360 # below for more details.
361 #
362 # Any suffix of trailing zeros may be omitted.
363 &quot;A String&quot;,
364 ],
365 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
Bu Sun Kim65020912020-05-20 12:08:20 -0700366 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
Dan O'Mearadd494642020-05-01 07:42:23 -0700367 # Sum[i=1..count]((x_i - mean)^2)
368 # where each x_i is a sample values. If `count` is zero then this field
369 # must be zero, otherwise validation of the request fails.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700370 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
371 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
372 # the total number of buckets is `num_finite_buckets` + 2.
373 # See comments on `bucket_options` for details.
374 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
375 # [offset + (i-1) * width, offset + i * width)
376 # where i ranges from 1 to num_finite_buckets, inclusive.
377 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
378 # [offset + (i-1) * width, offset + i * width)
379 # where i ranges from 1 to num_finite_buckets, inclusive.
380 # Must be strictly positive.
381 },
382 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
383 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
384 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
385 # [scale * growth_factor^(i-1), scale * growth_factor^i)
386 # where i ranges from 1 to num_finite_buckets inclusive.
387 # Must be larger than 1.0.
388 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
389 # [scale * growth_factor^(i-1), scale * growth_factor^i)
390 # where i ranges from 1 to num_finite_buckets inclusive.
391 # Must be &gt; 0.
392 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
393 # the total number of buckets is `num_finite_buckets` + 2.
394 # See comments on `bucket_options` for details.
395 },
396 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
Bu Sun Kim65020912020-05-20 12:08:20 -0700397 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
Dan O'Mearadd494642020-05-01 07:42:23 -0700398 { # Exemplars are example points that may be used to annotate aggregated
399 # distribution values. They are metadata that gives information about a
400 # particular value added to a Distribution bucket, such as a trace ID that
401 # was active when a value was added. They may contain further information,
402 # such as a example values and timestamps, origin, etc.
Bu Sun Kim65020912020-05-20 12:08:20 -0700403 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
404 # exemplar belongs.
Bu Sun Kim65020912020-05-20 12:08:20 -0700405 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
Dan O'Mearadd494642020-05-01 07:42:23 -0700406 #
407 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
408 #
409 # Literal string: type.googleapis.com/google.protobuf.StringValue
410 #
411 # Labels dropped during aggregation:
412 # type.googleapis.com/google.monitoring.v3.DroppedLabels
413 #
414 # There may be only a single attachment of any given message type in a
415 # single exemplar, and this is enforced by the system.
416 {
Bu Sun Kim65020912020-05-20 12:08:20 -0700417 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -0700418 },
419 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700420 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
Dan O'Mearadd494642020-05-01 07:42:23 -0700421 },
422 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700423 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400424 # zero then this field must be zero.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700425 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
426 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
427 # buckets. Note that a list of length N-1 defines N buckets because
428 # of fenceposting. See comments on `bucket_options` for details.
429 #
430 # The i&#x27;th finite bucket covers the interval
431 # [bound[i-1], bound[i])
432 # where i ranges from 1 to bound_size() - 1. Note that there are no
433 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
434 # that special case the single bound defines the boundary between the
435 # underflow and overflow buckets.
436 #
437 # bucket number lower bound upper bound
438 # i == 0 (underflow) -inf bound[i]
439 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
440 # i == bound_size() (overflow) bound[i-1] +inf
441 3.14,
442 ],
443 },
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400444 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700445 &quot;labels&quot;: { # The labels describing the metric value.
446 # See comments on google.api.servicecontrol.v1.Operation.labels for
447 # the overriding relationship.
448 # Note that this map must not contain monitored resource labels.
449 &quot;a_key&quot;: &quot;A String&quot;,
450 },
451 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700452 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
453 # applies.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700454 &quot;boolValue&quot;: True or False, # A boolean value.
455 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
456 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
457 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
458 # The value must be between -999,999,999 and +999,999,999 inclusive.
459 # If `units` is positive, `nanos` must be positive or zero.
460 # If `units` is zero, `nanos` can be positive, zero, or negative.
461 # If `units` is negative, `nanos` must be negative or zero.
462 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
463 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
464 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
465 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
466 },
467 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400468 },
469 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700470 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400471 },
472 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700473 &quot;serviceConfigId&quot;: &quot;A String&quot;, # ID of the actual config used to process the request.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400474 }</pre>
475</div>
476
477<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700478 <code class="details" id="check">check(serviceName, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700479 <pre>Checks whether an operation on a service should be allowed to proceed
480based on the configuration of the service and related policies. It must be
481called before the operation is executed.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400482
483If feasible, the client should cache the check results and reuse them for
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070048460 seconds. In case of any server errors, the client should rely on the
485cached results for much longer time to avoid outage.
486WARNING: There is general 60s delay for the configuration and policy
487propagation, therefore callers MUST NOT depend on the `Check` method having
488the latest policy information.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400489
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700490NOTE: the CheckRequest has the size limit of 64KB.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400491
492This method requires the `servicemanagement.services.check` permission
493on the specified service. For more information, see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700494[Cloud IAM](https://cloud.google.com/iam).
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400495
496Args:
497 serviceName: string, The service name as specified in its service configuration. For example,
Bu Sun Kim65020912020-05-20 12:08:20 -0700498`&quot;pubsub.googleapis.com&quot;`.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400499
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700500See
501[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)
502for the definition of a service name. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700503 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400504 The object takes the form of:
505
506{ # Request message for the Check method.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700507 &quot;serviceConfigId&quot;: &quot;A String&quot;, # Specifies which version of service configuration should be used to process
508 # the request.
509 #
510 # If unspecified or no matching version can be found, the
511 # latest one will be used.
Bu Sun Kim65020912020-05-20 12:08:20 -0700512 &quot;operation&quot;: { # Represents information regarding an operation. # The operation to be checked.
Bu Sun Kim65020912020-05-20 12:08:20 -0700513 &quot;startTime&quot;: &quot;A String&quot;, # Required. Start time of the operation.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700514 &quot;traceSpans&quot;: [ # Unimplemented. A list of Cloud Trace spans. The span names shall contain
515 # the id of the destination project which can be either the produce or the
516 # consumer project.
517 { # A span represents a single operation within a trace. Spans can be
518 # nested to form a trace tree. Often, a trace contains a root span
519 # that describes the end-to-end latency, and one or more subspans for
520 # its sub-operations. A trace can also contain multiple root spans,
521 # or none at all. Spans do not need to be contiguous&amp;mdash;there may be
522 # gaps or overlaps between spans in a trace.
523 &quot;spanKind&quot;: &quot;A String&quot;, # Distinguishes between spans generated in a particular context. For example,
524 # two spans with the same name may be distinguished using `CLIENT` (caller)
525 # and `SERVER` (callee) to identify an RPC call.
526 &quot;sameProcessAsParentSpan&quot;: True or False, # (Optional) Set this parameter to indicate whether this span is in
527 # the same process as its parent. If you do not set this parameter,
528 # Stackdriver Trace is unable to take advantage of this helpful
529 # information.
530 &quot;childSpanCount&quot;: 42, # An optional number of child spans that were generated while this span
531 # was active. If set, allows implementation to detect missing child spans.
532 &quot;startTime&quot;: &quot;A String&quot;, # The start time of the span. On the client side, this is the time kept by
533 # the local machine where the span execution starts. On the server side, this
534 # is the time when the server&#x27;s application handler starts running.
535 &quot;displayName&quot;: { # Represents a string that might be shortened to a specified length. # A description of the span&#x27;s operation (up to 128 bytes).
536 # Stackdriver Trace displays the description in the
537 # Google Cloud Platform Console.
538 # For example, the display name can be a qualified method name or a file name
539 # and a line number where the operation is called. A best practice is to use
540 # the same display name within an application and at the same call point.
541 # This makes it easier to correlate spans in different traces.
542 &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
543 # bytes long and the limit of the string is 128 bytes, then
544 # `value` contains the first 128 bytes of the 500-byte string.
545 #
546 # Truncation always happens on a UTF8 character boundary. If there
547 # are multi-byte characters in the string, then the length of the
548 # shortened string might be less than the size limit.
549 &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
550 # value is 0, then the string was not shortened.
551 },
552 &quot;endTime&quot;: &quot;A String&quot;, # The end time of the span. On the client side, this is the time kept by
553 # the local machine where the span execution ends. On the server side, this
554 # is the time when the server application handler stops running.
555 &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the span. You can have up to 32 attributes per
556 # span.
557 &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
558 # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
559 # or the Boolean values `true` and `false`. For example:
560 #
561 # &quot;/instance_id&quot;: &quot;my-instance&quot;
562 # &quot;/http/user_agent&quot;: &quot;&quot;
563 # &quot;/http/request_bytes&quot;: 300
564 # &quot;abc.com/myattribute&quot;: true
565 &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
566 &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
567 &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
568 # bytes long and the limit of the string is 128 bytes, then
569 # `value` contains the first 128 bytes of the 500-byte string.
570 #
571 # Truncation always happens on a UTF8 character boundary. If there
572 # are multi-byte characters in the string, then the length of the
573 # shortened string might be less than the size limit.
574 &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
575 # value is 0, then the string was not shortened.
576 },
577 &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
578 &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
579 },
580 },
581 &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
582 # because their keys are too long or because there are too many attributes.
583 # If this value is 0 then all attributes are valid.
584 },
585 &quot;parentSpanId&quot;: &quot;A String&quot;, # The [SPAN_ID] of this span&#x27;s parent span. If this is a root span,
586 # then this field must be empty.
587 &quot;name&quot;: &quot;A String&quot;, # The resource name of the span in the following format:
588 #
589 # projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;
590 # it is a 32-character hexadecimal encoding of a 16-byte array.
591 #
592 # [SPAN_ID] is a unique identifier for a span within a trace; it
593 # is a 16-character hexadecimal encoding of an 8-byte array.
594 &quot;spanId&quot;: &quot;A String&quot;, # The [SPAN_ID] portion of the span&#x27;s resource name.
595 &quot;status&quot;: { # The `Status` type defines a logical error model that is suitable for # An optional final status for this span.
596 # different programming environments, including REST APIs and RPC APIs. It is
597 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
598 # three pieces of data: error code, error message, and error details.
599 #
600 # You can find out more about this error model and how to work with it in the
601 # [API Design Guide](https://cloud.google.com/apis/design/errors).
602 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
603 # user-facing error message should be localized and sent in the
604 # google.rpc.Status.details field, or localized by the client.
605 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
606 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
607 # message types for APIs to use.
608 {
609 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
610 },
611 ],
612 },
613 },
614 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700615 &quot;labels&quot;: { # Labels describing the operation. Only the following labels are allowed:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700616 #
617 # - Labels describing monitored resources as defined in
618 # the service configuration.
619 # - Default labels of metric values. When specified, labels defined in the
620 # metric value override these default.
621 # - The following labels defined by Google Cloud Platform:
622 # - `cloud.googleapis.com/location` describing the location where the
623 # operation happened,
624 # - `servicecontrol.googleapis.com/user_agent` describing the user agent
625 # of the API request,
626 # - `servicecontrol.googleapis.com/service_agent` describing the service
627 # used to handle the API request (e.g. ESP),
628 # - `servicecontrol.googleapis.com/platform` describing the platform
629 # where the API is served, such as App Engine, Compute Engine, or
630 # Kubernetes Engine.
Bu Sun Kim65020912020-05-20 12:08:20 -0700631 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700632 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700633 &quot;operationId&quot;: &quot;A String&quot;, # Identity of the operation. This must be unique within the scope of the
634 # service that generated the operation. If the service calls
635 # Check() and Report() on the same operation, the two calls should carry
636 # the same id.
637 #
638 # UUID version 4 is recommended, though not required.
639 # In scenarios where an operation is computed from existing information
640 # and an idempotent id is desirable for deduplication purpose, UUID version 5
641 # is recommended. See RFC 4122 for details.
Bu Sun Kim65020912020-05-20 12:08:20 -0700642 &quot;metricValueSets&quot;: [ # Represents information about this operation. Each MetricValueSet
643 # corresponds to a metric defined in the service configuration.
644 # The data type used in the MetricValueSet must agree with
645 # the data type specified in the metric definition.
Dan O'Mearadd494642020-05-01 07:42:23 -0700646 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700647 # Within a single operation, it is not allowed to have more than one
648 # MetricValue instances that have the same metric names and identical
649 # label value combinations. If a request has such duplicated MetricValue
650 # instances, the entire request is rejected with
651 # an invalid argument error.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400652 { # Represents a set of metric values in the same metric.
653 # Each metric value in the set should have a unique combination of start time,
654 # end time, and label values.
Bu Sun Kim65020912020-05-20 12:08:20 -0700655 &quot;metricValues&quot;: [ # The values in this metric.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400656 { # Represents a single metric value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700657 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
658 # applies. The time period has different semantics for different metric
659 # types (cumulative, delta, and gauge). See the metric definition
660 # documentation in the service configuration for details.
Bu Sun Kim65020912020-05-20 12:08:20 -0700661 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400662 # points. It contains the size of the population of sample points plus
663 # additional optional information:
664 #
665 # - the arithmetic mean of the samples
666 # - the minimum and maximum of the samples
667 # - the sum-squared-deviation of the samples, used to compute variance
668 # - a histogram of the values of the sample points
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700669 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
670 # optional. If present, they must sum to the `count` value.
671 #
672 # The buckets are defined below in `bucket_option`. There are N buckets.
673 # `bucket_counts[0]` is the number of samples in the underflow bucket.
674 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
675 # in each of the finite buckets. And `bucket_counts[N] is the number
676 # of samples in the overflow bucket. See the comments of `bucket_option`
677 # below for more details.
678 #
679 # Any suffix of trailing zeros may be omitted.
680 &quot;A String&quot;,
681 ],
682 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
Bu Sun Kim65020912020-05-20 12:08:20 -0700683 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
Dan O'Mearadd494642020-05-01 07:42:23 -0700684 # Sum[i=1..count]((x_i - mean)^2)
685 # where each x_i is a sample values. If `count` is zero then this field
686 # must be zero, otherwise validation of the request fails.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700687 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
688 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
689 # the total number of buckets is `num_finite_buckets` + 2.
690 # See comments on `bucket_options` for details.
691 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
692 # [offset + (i-1) * width, offset + i * width)
693 # where i ranges from 1 to num_finite_buckets, inclusive.
694 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
695 # [offset + (i-1) * width, offset + i * width)
696 # where i ranges from 1 to num_finite_buckets, inclusive.
697 # Must be strictly positive.
698 },
699 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
700 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
701 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
702 # [scale * growth_factor^(i-1), scale * growth_factor^i)
703 # where i ranges from 1 to num_finite_buckets inclusive.
704 # Must be larger than 1.0.
705 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
706 # [scale * growth_factor^(i-1), scale * growth_factor^i)
707 # where i ranges from 1 to num_finite_buckets inclusive.
708 # Must be &gt; 0.
709 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
710 # the total number of buckets is `num_finite_buckets` + 2.
711 # See comments on `bucket_options` for details.
712 },
713 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
Bu Sun Kim65020912020-05-20 12:08:20 -0700714 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
Dan O'Mearadd494642020-05-01 07:42:23 -0700715 { # Exemplars are example points that may be used to annotate aggregated
716 # distribution values. They are metadata that gives information about a
717 # particular value added to a Distribution bucket, such as a trace ID that
718 # was active when a value was added. They may contain further information,
719 # such as a example values and timestamps, origin, etc.
Bu Sun Kim65020912020-05-20 12:08:20 -0700720 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
721 # exemplar belongs.
Bu Sun Kim65020912020-05-20 12:08:20 -0700722 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
Dan O'Mearadd494642020-05-01 07:42:23 -0700723 #
724 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
725 #
726 # Literal string: type.googleapis.com/google.protobuf.StringValue
727 #
728 # Labels dropped during aggregation:
729 # type.googleapis.com/google.monitoring.v3.DroppedLabels
730 #
731 # There may be only a single attachment of any given message type in a
732 # single exemplar, and this is enforced by the system.
733 {
Bu Sun Kim65020912020-05-20 12:08:20 -0700734 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -0700735 },
736 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700737 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
Dan O'Mearadd494642020-05-01 07:42:23 -0700738 },
739 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700740 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
741 # zero then this field must be zero.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700742 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
743 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
744 # buckets. Note that a list of length N-1 defines N buckets because
745 # of fenceposting. See comments on `bucket_options` for details.
746 #
747 # The i&#x27;th finite bucket covers the interval
748 # [bound[i-1], bound[i])
749 # where i ranges from 1 to bound_size() - 1. Note that there are no
750 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
751 # that special case the single bound defines the boundary between the
752 # underflow and overflow buckets.
753 #
754 # bucket number lower bound upper bound
755 # i == 0 (underflow) -inf bound[i]
756 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
757 # i == bound_size() (overflow) bound[i-1] +inf
758 3.14,
759 ],
760 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700761 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700762 &quot;labels&quot;: { # The labels describing the metric value.
763 # See comments on google.api.servicecontrol.v1.Operation.labels for
764 # the overriding relationship.
765 # Note that this map must not contain monitored resource labels.
766 &quot;a_key&quot;: &quot;A String&quot;,
767 },
768 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700769 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
770 # applies.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700771 &quot;boolValue&quot;: True or False, # A boolean value.
772 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
773 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
774 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
775 # The value must be between -999,999,999 and +999,999,999 inclusive.
776 # If `units` is positive, `nanos` must be positive or zero.
777 # If `units` is zero, `nanos` can be positive, zero, or negative.
778 # If `units` is negative, `nanos` must be negative or zero.
779 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
780 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
781 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
782 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
783 },
784 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
Bu Sun Kim65020912020-05-20 12:08:20 -0700785 },
786 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700787 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
Bu Sun Kim65020912020-05-20 12:08:20 -0700788 },
789 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700790 &quot;userLabels&quot;: { # User defined labels for the resource that this operation is associated
791 # with. Only a combination of 1000 user labels per consumer project are
792 # allowed.
793 &quot;a_key&quot;: &quot;A String&quot;,
794 },
795 &quot;logEntries&quot;: [ # Represents information to be logged.
796 { # An individual log entry.
797 &quot;textPayload&quot;: &quot;A String&quot;, # The log entry payload, represented as a Unicode string (UTF-8).
798 &quot;sourceLocation&quot;: { # Additional information about the source code location that produced the log # Optional. Source code location information associated with the log entry,
799 # if any.
800 # entry.
801 &quot;function&quot;: &quot;A String&quot;, # Optional. Human-readable name of the function or method being invoked, with
802 # optional context such as the class or package name. This information may be
803 # used in contexts such as the logs viewer, where a file and line number are
804 # less meaningful. The format can vary by language. For example:
805 # `qual.if.ied.Class.method` (Java), `dir/package.func` (Go), `function`
806 # (Python).
807 &quot;line&quot;: &quot;A String&quot;, # Optional. Line within the source file. 1-based; 0 indicates no line number
808 # available.
809 &quot;file&quot;: &quot;A String&quot;, # Optional. Source file name. Depending on the runtime environment, this
810 # might be a simple name or a fully-qualified name.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700811 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700812 &quot;severity&quot;: &quot;A String&quot;, # The severity of the log entry. The default value is
813 # `LogSeverity.DEFAULT`.
814 &quot;structPayload&quot;: { # The log entry payload, represented as a structure that
815 # is expressed as a JSON object.
816 &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700817 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700818 &quot;labels&quot;: { # A set of user-defined (key, value) data that provides additional
819 # information about the log entry.
820 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700821 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700822 &quot;protoPayload&quot;: { # The log entry payload, represented as a protocol buffer that is
823 # expressed as a JSON object. The only accepted type currently is
824 # AuditLog.
825 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
826 },
827 &quot;httpRequest&quot;: { # A common proto for logging HTTP requests. Only contains semantics # Optional. Information about the HTTP request associated with this
828 # log entry, if applicable.
829 # defined by the HTTP specification. Product-specific logging
830 # information MUST be defined in a separate message.
831 &quot;protocol&quot;: &quot;A String&quot;, # Protocol used for the request. Examples: &quot;HTTP/1.1&quot;, &quot;HTTP/2&quot;, &quot;websocket&quot;
832 &quot;cacheValidatedWithOriginServer&quot;: True or False, # Whether or not the response was validated with the origin server before
833 # being served from cache. This field is only meaningful if `cache_hit` is
834 # True.
835 &quot;cacheFillBytes&quot;: &quot;A String&quot;, # The number of HTTP response bytes inserted into cache. Set only when a
836 # cache fill was attempted.
837 &quot;requestSize&quot;: &quot;A String&quot;, # The size of the HTTP request message in bytes, including the request
838 # headers and the request body.
839 &quot;responseSize&quot;: &quot;A String&quot;, # The size of the HTTP response message sent back to the client, in bytes,
840 # including the response headers and the response body.
841 &quot;serverIp&quot;: &quot;A String&quot;, # The IP address (IPv4 or IPv6) of the origin server that the request was
842 # sent to.
843 &quot;referer&quot;: &quot;A String&quot;, # The referer URL of the request, as defined in
844 # [HTTP/1.1 Header Field
845 # Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
846 &quot;cacheHit&quot;: True or False, # Whether or not an entity was served from cache
847 # (with or without validation).
848 &quot;latency&quot;: &quot;A String&quot;, # The request processing latency on the server, from the time the request was
849 # received until the response was sent.
850 &quot;requestUrl&quot;: &quot;A String&quot;, # The scheme (http, https), the host name, the path, and the query
851 # portion of the URL that was requested.
852 # Example: `&quot;http://example.com/some/info?color=red&quot;`.
853 &quot;cacheLookup&quot;: True or False, # Whether or not a cache lookup was attempted.
854 &quot;requestMethod&quot;: &quot;A String&quot;, # The request method. Examples: `&quot;GET&quot;`, `&quot;HEAD&quot;`, `&quot;PUT&quot;`, `&quot;POST&quot;`.
855 &quot;remoteIp&quot;: &quot;A String&quot;, # The IP address (IPv4 or IPv6) of the client that issued the HTTP
856 # request. Examples: `&quot;192.168.1.1&quot;`, `&quot;FE80::0202:B3FF:FE1E:8329&quot;`.
857 &quot;userAgent&quot;: &quot;A String&quot;, # The user agent sent by the client. Example:
858 # `&quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET
859 # CLR 1.0.3705)&quot;`.
860 &quot;status&quot;: 42, # The response code indicating the status of the response.
861 # Examples: 200, 404.
862 },
863 &quot;operation&quot;: { # Additional information about a potentially long-running operation with which # Optional. Information about an operation associated with the log entry, if
864 # applicable.
865 # a log entry is associated.
866 &quot;first&quot;: True or False, # Optional. Set this to True if this is the first log entry in the operation.
867 &quot;id&quot;: &quot;A String&quot;, # Optional. An arbitrary operation identifier. Log entries with the
868 # same identifier are assumed to be part of the same operation.
869 &quot;producer&quot;: &quot;A String&quot;, # Optional. An arbitrary producer identifier. The combination of
870 # `id` and `producer` must be globally unique. Examples for `producer`:
871 # `&quot;MyDivision.MyBigCompany.com&quot;`, `&quot;github.com/MyProject/MyApplication&quot;`.
872 &quot;last&quot;: True or False, # Optional. Set this to True if this is the last log entry in the operation.
873 },
874 &quot;name&quot;: &quot;A String&quot;, # Required. The log to which this log entry belongs. Examples: `&quot;syslog&quot;`,
875 # `&quot;book_log&quot;`.
876 &quot;trace&quot;: &quot;A String&quot;, # Optional. Resource name of the trace associated with the log entry, if any.
877 # If this field contains a relative resource name, you can assume the name is
878 # relative to `//tracing.googleapis.com`. Example:
879 # `projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824`
880 &quot;timestamp&quot;: &quot;A String&quot;, # The time the event described by the log entry occurred. If
881 # omitted, defaults to operation start time.
882 &quot;insertId&quot;: &quot;A String&quot;, # A unique ID for the log entry used for deduplication. If omitted,
883 # the implementation will generate one based on operation_id.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700884 },
885 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700886 &quot;importance&quot;: &quot;A String&quot;, # DO NOT USE. This is an experimental field.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700887 &quot;quotaProperties&quot;: { # Represents the properties needed for quota operations. # Represents the properties needed for quota check. Applicable only if this
888 # operation is for a quota check request. If this is not specified, no quota
889 # check will be performed.
890 &quot;quotaMode&quot;: &quot;A String&quot;, # Quota mode for this operation.
891 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700892 &quot;operationName&quot;: &quot;A String&quot;, # Fully qualified name of the operation. Reserved for future use.
893 &quot;resources&quot;: [ # The resources that are involved in the operation.
894 # The maximum supported number of entries in this field is 100.
895 { # Describes a resource associated with this operation.
896 &quot;resourceContainer&quot;: &quot;A String&quot;, # The identifier of the parent of this resource instance.
897 # Must be in one of the following formats:
898 # - “projects/&lt;project-id or project-number&gt;”
899 # - “folders/&lt;folder-id&gt;”
900 # - “organizations/&lt;organization-id&gt;”
901 &quot;resourceName&quot;: &quot;A String&quot;, # Name of the resource. This is used for auditing purposes.
902 &quot;resourceLocation&quot;: &quot;A String&quot;, # The location of the resource. If not empty, the resource will be checked
903 # against location policy. The value must be a valid zone, region or
904 # multiregion. For example: &quot;europe-west4&quot; or &quot;northamerica-northeast1-a&quot;
905 },
906 ],
907 &quot;endTime&quot;: &quot;A String&quot;, # End time of the operation.
908 # Required when the operation is used in ServiceController.Report,
909 # but optional when the operation is used in ServiceController.Check.
910 &quot;extensions&quot;: [ # Unimplemented.
911 {
912 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
913 },
914 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700915 &quot;consumerId&quot;: &quot;A String&quot;, # Identity of the consumer who is using the service.
916 # This field should be filled in for the operations initiated by a
917 # consumer, but not for service-initiated operations that are
918 # not related to a specific consumer.
919 #
920 # - This can be in one of the following formats:
921 # - project:PROJECT_ID,
922 # - project`_`number:PROJECT_NUMBER,
923 # - projects/PROJECT_ID or PROJECT_NUMBER,
924 # - folders/FOLDER_NUMBER,
925 # - organizations/ORGANIZATION_NUMBER,
926 # - api`_`key:API_KEY.
Bu Sun Kim65020912020-05-20 12:08:20 -0700927 },
928 &quot;requestProjectSettings&quot;: True or False, # Requests the project settings to be returned as part of the check response.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700929 &quot;skipActivationCheck&quot;: True or False, # Indicates if service activation check should be skipped for this request.
930 # Default behavior is to perform the check and apply relevant quota.
931 # WARNING: Setting this flag to &quot;true&quot; will disable quota enforcement.
Bu Sun Kim65020912020-05-20 12:08:20 -0700932 }
933
934 x__xgafv: string, V1 error format.
935 Allowed values
936 1 - v1 error format
937 2 - v2 error format
938
939Returns:
940 An object of the form:
941
942 { # Response message for the Check method.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700943 &quot;checkInfo&quot;: { # Contains additional information about the check operation. # Feedback data returned from the server during processing a Check request.
944 &quot;consumerInfo&quot;: { # `ConsumerInfo` provides information about the consumer. # Consumer info of this check.
945 &quot;type&quot;: &quot;A String&quot;, # The type of the consumer which should have been defined in
946 # [Google Resource Manager](https://cloud.google.com/resource-manager/).
947 &quot;consumerNumber&quot;: &quot;A String&quot;, # The consumer identity number, can be Google cloud project number, folder
948 # number or organization number e.g. 1234567890. A value of 0 indicates no
949 # consumer number is found.
950 &quot;projectNumber&quot;: &quot;A String&quot;, # The Google cloud project number, e.g. 1234567890. A value of 0 indicates
951 # no project number is found.
952 #
953 # NOTE: This field is deprecated after Chemist support flexible consumer
954 # id. New code should not depend on this field anymore.
955 },
956 &quot;unusedArguments&quot;: [ # A list of fields and label keys that are ignored by the server.
957 # The client doesn&#x27;t need to send them for following requests to improve
958 # performance and allow better aggregation.
959 &quot;A String&quot;,
960 ],
961 },
962 &quot;quotaInfo&quot;: { # Contains the quota information for a quota check response. # Quota information for the check request associated with this response.
963 &quot;quotaMetrics&quot;: [ # Quota metrics to indicate the usage. Depending on the check request, one or
964 # more of the following metrics will be included:
965 #
966 # 1. For rate quota, per quota group or per quota metric incremental usage
967 # will be specified using the following delta metric:
968 # &quot;serviceruntime.googleapis.com/api/consumer/quota_used_count&quot;
969 #
970 # 2. For allocation quota, per quota metric total usage will be specified
971 # using the following gauge metric:
972 # &quot;serviceruntime.googleapis.com/allocation/consumer/quota_used_count&quot;
973 #
974 # 3. For both rate quota and allocation quota, the quota limit reached
975 # condition will be specified using the following boolean metric:
976 # &quot;serviceruntime.googleapis.com/quota/exceeded&quot;
977 { # Represents a set of metric values in the same metric.
978 # Each metric value in the set should have a unique combination of start time,
979 # end time, and label values.
980 &quot;metricValues&quot;: [ # The values in this metric.
981 { # Represents a single metric value.
982 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
983 # applies. The time period has different semantics for different metric
984 # types (cumulative, delta, and gauge). See the metric definition
985 # documentation in the service configuration for details.
986 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
987 # points. It contains the size of the population of sample points plus
988 # additional optional information:
989 #
990 # - the arithmetic mean of the samples
991 # - the minimum and maximum of the samples
992 # - the sum-squared-deviation of the samples, used to compute variance
993 # - a histogram of the values of the sample points
994 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
995 # optional. If present, they must sum to the `count` value.
996 #
997 # The buckets are defined below in `bucket_option`. There are N buckets.
998 # `bucket_counts[0]` is the number of samples in the underflow bucket.
999 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
1000 # in each of the finite buckets. And `bucket_counts[N] is the number
1001 # of samples in the overflow bucket. See the comments of `bucket_option`
1002 # below for more details.
1003 #
1004 # Any suffix of trailing zeros may be omitted.
1005 &quot;A String&quot;,
1006 ],
1007 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
1008 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
1009 # Sum[i=1..count]((x_i - mean)^2)
1010 # where each x_i is a sample values. If `count` is zero then this field
1011 # must be zero, otherwise validation of the request fails.
1012 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
1013 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1014 # the total number of buckets is `num_finite_buckets` + 2.
1015 # See comments on `bucket_options` for details.
1016 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1017 # [offset + (i-1) * width, offset + i * width)
1018 # where i ranges from 1 to num_finite_buckets, inclusive.
1019 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1020 # [offset + (i-1) * width, offset + i * width)
1021 # where i ranges from 1 to num_finite_buckets, inclusive.
1022 # Must be strictly positive.
1023 },
1024 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
1025 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
1026 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1027 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1028 # where i ranges from 1 to num_finite_buckets inclusive.
1029 # Must be larger than 1.0.
1030 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1031 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1032 # where i ranges from 1 to num_finite_buckets inclusive.
1033 # Must be &gt; 0.
1034 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1035 # the total number of buckets is `num_finite_buckets` + 2.
1036 # See comments on `bucket_options` for details.
1037 },
1038 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
1039 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
1040 { # Exemplars are example points that may be used to annotate aggregated
1041 # distribution values. They are metadata that gives information about a
1042 # particular value added to a Distribution bucket, such as a trace ID that
1043 # was active when a value was added. They may contain further information,
1044 # such as a example values and timestamps, origin, etc.
1045 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
1046 # exemplar belongs.
1047 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
1048 #
1049 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
1050 #
1051 # Literal string: type.googleapis.com/google.protobuf.StringValue
1052 #
1053 # Labels dropped during aggregation:
1054 # type.googleapis.com/google.monitoring.v3.DroppedLabels
1055 #
1056 # There may be only a single attachment of any given message type in a
1057 # single exemplar, and this is enforced by the system.
1058 {
1059 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1060 },
1061 ],
1062 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
1063 },
1064 ],
1065 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
1066 # zero then this field must be zero.
1067 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
1068 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
1069 # buckets. Note that a list of length N-1 defines N buckets because
1070 # of fenceposting. See comments on `bucket_options` for details.
1071 #
1072 # The i&#x27;th finite bucket covers the interval
1073 # [bound[i-1], bound[i])
1074 # where i ranges from 1 to bound_size() - 1. Note that there are no
1075 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
1076 # that special case the single bound defines the boundary between the
1077 # underflow and overflow buckets.
1078 #
1079 # bucket number lower bound upper bound
1080 # i == 0 (underflow) -inf bound[i]
1081 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
1082 # i == bound_size() (overflow) bound[i-1] +inf
1083 3.14,
1084 ],
1085 },
1086 },
1087 &quot;labels&quot;: { # The labels describing the metric value.
1088 # See comments on google.api.servicecontrol.v1.Operation.labels for
1089 # the overriding relationship.
1090 # Note that this map must not contain monitored resource labels.
1091 &quot;a_key&quot;: &quot;A String&quot;,
1092 },
1093 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
1094 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
1095 # applies.
1096 &quot;boolValue&quot;: True or False, # A boolean value.
1097 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
1098 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
1099 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
1100 # The value must be between -999,999,999 and +999,999,999 inclusive.
1101 # If `units` is positive, `nanos` must be positive or zero.
1102 # If `units` is zero, `nanos` can be positive, zero, or negative.
1103 # If `units` is negative, `nanos` must be negative or zero.
1104 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1105 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
1106 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
1107 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
1108 },
1109 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
1110 },
1111 ],
1112 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
1113 },
1114 ],
1115 &quot;limitExceeded&quot;: [ # Quota Metrics that have exceeded quota limits.
1116 # For QuotaGroup-based quota, this is QuotaGroup.name
1117 # For QuotaLimit-based quota, this is QuotaLimit.name
1118 # See: google.api.Quota
1119 # Deprecated: Use quota_metrics to get per quota group limit exceeded status.
1120 &quot;A String&quot;,
1121 ],
1122 &quot;quotaConsumed&quot;: { # Map of quota group name to the actual number of tokens consumed. If the
1123 # quota check was not successful, then this will not be populated due to no
1124 # quota consumption.
1125 #
1126 # We are not merging this field with &#x27;quota_metrics&#x27; field because of the
1127 # complexity of scaling in Chemist client code base. For simplicity, we will
1128 # keep this field for Castor (that scales quota usage) and &#x27;quota_metrics&#x27;
1129 # for SuperQuota (that doesn&#x27;t scale quota usage).
1130 &quot;a_key&quot;: 42,
1131 },
1132 },
1133 &quot;serviceConfigId&quot;: &quot;A String&quot;, # The actual config id used to process the request.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001134 &quot;serviceRolloutId&quot;: &quot;A String&quot;, # The current service rollout id used to process the request.
1135 &quot;operationId&quot;: &quot;A String&quot;, # The same operation_id value used in the CheckRequest.
1136 # Used for logging and diagnostics purposes.
1137 &quot;checkErrors&quot;: [ # Indicate the decision of the check.
1138 #
1139 # If no check errors are present, the service should process the operation.
1140 # Otherwise the service should use the list of errors to determine the
1141 # appropriate action.
1142 { # Defines the errors to be returned in
1143 # google.api.servicecontrol.v1.CheckResponse.check_errors.
1144 &quot;detail&quot;: &quot;A String&quot;, # Free-form text providing details on the error cause of the error.
1145 &quot;status&quot;: { # The `Status` type defines a logical error model that is suitable for # Contains public information about the check error. If available,
1146 # `status.code` will be non zero and client can propagate it out as public
1147 # error.
1148 # different programming environments, including REST APIs and RPC APIs. It is
1149 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1150 # three pieces of data: error code, error message, and error details.
1151 #
1152 # You can find out more about this error model and how to work with it in the
1153 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001154 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
1155 # user-facing error message should be localized and sent in the
1156 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001157 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001158 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
1159 # message types for APIs to use.
1160 {
1161 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1162 },
1163 ],
1164 },
1165 &quot;subject&quot;: &quot;A String&quot;, # Subject to whom this error applies. See the specific code enum for more
1166 # details on this field. For example:
1167 #
1168 # - &quot;project:&lt;project-id or project-number&gt;&quot;
1169 # - &quot;folder:&lt;folder-id&gt;&quot;
1170 # - &quot;organization:&lt;organization-id&gt;&quot;
1171 &quot;code&quot;: &quot;A String&quot;, # The error code.
1172 },
1173 ],
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001174 }</pre>
1175</div>
1176
1177<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001178 <code class="details" id="report">report(serviceName, body=None, x__xgafv=None)</code>
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001179 <pre>Reports operation results to Google Service Control, such as logs and
1180metrics. It should be called after an operation is completed.
1181
1182If feasible, the client should aggregate reporting data for up to 5
1183seconds to reduce API traffic. Limiting aggregation to 5 seconds is to
1184reduce data loss during client crashes. Clients should carefully choose
1185the aggregation time window to avoid data loss risk more than 0.01%
1186for business and compliance reasons.
1187
Dan O'Mearadd494642020-05-01 07:42:23 -07001188NOTE: the ReportRequest has the size limit (wire-format byte size) of
11891MB.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001190
1191This method requires the `servicemanagement.services.report` permission
1192on the specified service. For more information, see
1193[Google Cloud IAM](https://cloud.google.com/iam).
1194
1195Args:
1196 serviceName: string, The service name as specified in its service configuration. For example,
Bu Sun Kim65020912020-05-20 12:08:20 -07001197`&quot;pubsub.googleapis.com&quot;`.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001198
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001199See
1200[google.api.Service](https://cloud.google.com/service-management/reference/rpc/google.api#google.api.Service)
1201for the definition of a service name. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001202 body: object, The request body.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001203 The object takes the form of:
1204
1205{ # Request message for the Report method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001206 &quot;operations&quot;: [ # Operations to be reported.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001207 #
1208 # Typically the service should report one operation per request.
1209 # Putting multiple operations into a single request is allowed, but should
1210 # be used only when multiple operations are natually available at the time
1211 # of the report.
1212 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001213 # There is no limit on the number of operations in the same ReportRequest,
1214 # however the ReportRequest size should be no larger than 1MB. See
1215 # ReportResponse.report_errors for partial failure behavior.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001216 { # Represents information regarding an operation.
Bu Sun Kim65020912020-05-20 12:08:20 -07001217 &quot;startTime&quot;: &quot;A String&quot;, # Required. Start time of the operation.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001218 &quot;traceSpans&quot;: [ # Unimplemented. A list of Cloud Trace spans. The span names shall contain
1219 # the id of the destination project which can be either the produce or the
1220 # consumer project.
1221 { # A span represents a single operation within a trace. Spans can be
1222 # nested to form a trace tree. Often, a trace contains a root span
1223 # that describes the end-to-end latency, and one or more subspans for
1224 # its sub-operations. A trace can also contain multiple root spans,
1225 # or none at all. Spans do not need to be contiguous&amp;mdash;there may be
1226 # gaps or overlaps between spans in a trace.
1227 &quot;spanKind&quot;: &quot;A String&quot;, # Distinguishes between spans generated in a particular context. For example,
1228 # two spans with the same name may be distinguished using `CLIENT` (caller)
1229 # and `SERVER` (callee) to identify an RPC call.
1230 &quot;sameProcessAsParentSpan&quot;: True or False, # (Optional) Set this parameter to indicate whether this span is in
1231 # the same process as its parent. If you do not set this parameter,
1232 # Stackdriver Trace is unable to take advantage of this helpful
1233 # information.
1234 &quot;childSpanCount&quot;: 42, # An optional number of child spans that were generated while this span
1235 # was active. If set, allows implementation to detect missing child spans.
1236 &quot;startTime&quot;: &quot;A String&quot;, # The start time of the span. On the client side, this is the time kept by
1237 # the local machine where the span execution starts. On the server side, this
1238 # is the time when the server&#x27;s application handler starts running.
1239 &quot;displayName&quot;: { # Represents a string that might be shortened to a specified length. # A description of the span&#x27;s operation (up to 128 bytes).
1240 # Stackdriver Trace displays the description in the
1241 # Google Cloud Platform Console.
1242 # For example, the display name can be a qualified method name or a file name
1243 # and a line number where the operation is called. A best practice is to use
1244 # the same display name within an application and at the same call point.
1245 # This makes it easier to correlate spans in different traces.
1246 &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
1247 # bytes long and the limit of the string is 128 bytes, then
1248 # `value` contains the first 128 bytes of the 500-byte string.
1249 #
1250 # Truncation always happens on a UTF8 character boundary. If there
1251 # are multi-byte characters in the string, then the length of the
1252 # shortened string might be less than the size limit.
1253 &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
1254 # value is 0, then the string was not shortened.
1255 },
1256 &quot;endTime&quot;: &quot;A String&quot;, # The end time of the span. On the client side, this is the time kept by
1257 # the local machine where the span execution ends. On the server side, this
1258 # is the time when the server application handler stops running.
1259 &quot;attributes&quot;: { # A set of attributes, each in the format `[KEY]:[VALUE]`. # A set of attributes on the span. You can have up to 32 attributes per
1260 # span.
1261 &quot;attributeMap&quot;: { # The set of attributes. Each attribute&#x27;s key can be up to 128 bytes
1262 # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
1263 # or the Boolean values `true` and `false`. For example:
1264 #
1265 # &quot;/instance_id&quot;: &quot;my-instance&quot;
1266 # &quot;/http/user_agent&quot;: &quot;&quot;
1267 # &quot;/http/request_bytes&quot;: 300
1268 # &quot;abc.com/myattribute&quot;: true
1269 &quot;a_key&quot;: { # The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
1270 &quot;stringValue&quot;: { # Represents a string that might be shortened to a specified length. # A string up to 256 bytes long.
1271 &quot;value&quot;: &quot;A String&quot;, # The shortened string. For example, if the original string is 500
1272 # bytes long and the limit of the string is 128 bytes, then
1273 # `value` contains the first 128 bytes of the 500-byte string.
1274 #
1275 # Truncation always happens on a UTF8 character boundary. If there
1276 # are multi-byte characters in the string, then the length of the
1277 # shortened string might be less than the size limit.
1278 &quot;truncatedByteCount&quot;: 42, # The number of bytes removed from the original string. If this
1279 # value is 0, then the string was not shortened.
1280 },
1281 &quot;intValue&quot;: &quot;A String&quot;, # A 64-bit signed integer.
1282 &quot;boolValue&quot;: True or False, # A Boolean value represented by `true` or `false`.
1283 },
1284 },
1285 &quot;droppedAttributesCount&quot;: 42, # The number of attributes that were discarded. Attributes can be discarded
1286 # because their keys are too long or because there are too many attributes.
1287 # If this value is 0 then all attributes are valid.
1288 },
1289 &quot;parentSpanId&quot;: &quot;A String&quot;, # The [SPAN_ID] of this span&#x27;s parent span. If this is a root span,
1290 # then this field must be empty.
1291 &quot;name&quot;: &quot;A String&quot;, # The resource name of the span in the following format:
1292 #
1293 # projects/[PROJECT_ID]/traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a project;
1294 # it is a 32-character hexadecimal encoding of a 16-byte array.
1295 #
1296 # [SPAN_ID] is a unique identifier for a span within a trace; it
1297 # is a 16-character hexadecimal encoding of an 8-byte array.
1298 &quot;spanId&quot;: &quot;A String&quot;, # The [SPAN_ID] portion of the span&#x27;s resource name.
1299 &quot;status&quot;: { # The `Status` type defines a logical error model that is suitable for # An optional final status for this span.
1300 # different programming environments, including REST APIs and RPC APIs. It is
1301 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1302 # three pieces of data: error code, error message, and error details.
1303 #
1304 # You can find out more about this error model and how to work with it in the
1305 # [API Design Guide](https://cloud.google.com/apis/design/errors).
1306 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
1307 # user-facing error message should be localized and sent in the
1308 # google.rpc.Status.details field, or localized by the client.
1309 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
1310 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
1311 # message types for APIs to use.
1312 {
1313 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1314 },
1315 ],
1316 },
1317 },
1318 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001319 &quot;labels&quot;: { # Labels describing the operation. Only the following labels are allowed:
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001320 #
1321 # - Labels describing monitored resources as defined in
1322 # the service configuration.
1323 # - Default labels of metric values. When specified, labels defined in the
1324 # metric value override these default.
1325 # - The following labels defined by Google Cloud Platform:
1326 # - `cloud.googleapis.com/location` describing the location where the
1327 # operation happened,
1328 # - `servicecontrol.googleapis.com/user_agent` describing the user agent
1329 # of the API request,
1330 # - `servicecontrol.googleapis.com/service_agent` describing the service
1331 # used to handle the API request (e.g. ESP),
1332 # - `servicecontrol.googleapis.com/platform` describing the platform
1333 # where the API is served, such as App Engine, Compute Engine, or
1334 # Kubernetes Engine.
Bu Sun Kim65020912020-05-20 12:08:20 -07001335 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001336 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001337 &quot;operationId&quot;: &quot;A String&quot;, # Identity of the operation. This must be unique within the scope of the
1338 # service that generated the operation. If the service calls
1339 # Check() and Report() on the same operation, the two calls should carry
1340 # the same id.
1341 #
1342 # UUID version 4 is recommended, though not required.
1343 # In scenarios where an operation is computed from existing information
1344 # and an idempotent id is desirable for deduplication purpose, UUID version 5
1345 # is recommended. See RFC 4122 for details.
Bu Sun Kim65020912020-05-20 12:08:20 -07001346 &quot;metricValueSets&quot;: [ # Represents information about this operation. Each MetricValueSet
1347 # corresponds to a metric defined in the service configuration.
1348 # The data type used in the MetricValueSet must agree with
1349 # the data type specified in the metric definition.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001350 #
Bu Sun Kim65020912020-05-20 12:08:20 -07001351 # Within a single operation, it is not allowed to have more than one
1352 # MetricValue instances that have the same metric names and identical
1353 # label value combinations. If a request has such duplicated MetricValue
1354 # instances, the entire request is rejected with
1355 # an invalid argument error.
1356 { # Represents a set of metric values in the same metric.
1357 # Each metric value in the set should have a unique combination of start time,
1358 # end time, and label values.
1359 &quot;metricValues&quot;: [ # The values in this metric.
1360 { # Represents a single metric value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001361 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
1362 # applies. The time period has different semantics for different metric
1363 # types (cumulative, delta, and gauge). See the metric definition
1364 # documentation in the service configuration for details.
Bu Sun Kim65020912020-05-20 12:08:20 -07001365 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
1366 # points. It contains the size of the population of sample points plus
1367 # additional optional information:
1368 #
1369 # - the arithmetic mean of the samples
1370 # - the minimum and maximum of the samples
1371 # - the sum-squared-deviation of the samples, used to compute variance
1372 # - a histogram of the values of the sample points
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001373 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
1374 # optional. If present, they must sum to the `count` value.
1375 #
1376 # The buckets are defined below in `bucket_option`. There are N buckets.
1377 # `bucket_counts[0]` is the number of samples in the underflow bucket.
1378 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
1379 # in each of the finite buckets. And `bucket_counts[N] is the number
1380 # of samples in the overflow bucket. See the comments of `bucket_option`
1381 # below for more details.
1382 #
1383 # Any suffix of trailing zeros may be omitted.
1384 &quot;A String&quot;,
1385 ],
1386 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
Bu Sun Kim65020912020-05-20 12:08:20 -07001387 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
1388 # Sum[i=1..count]((x_i - mean)^2)
1389 # where each x_i is a sample values. If `count` is zero then this field
1390 # must be zero, otherwise validation of the request fails.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001391 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
1392 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1393 # the total number of buckets is `num_finite_buckets` + 2.
1394 # See comments on `bucket_options` for details.
1395 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1396 # [offset + (i-1) * width, offset + i * width)
1397 # where i ranges from 1 to num_finite_buckets, inclusive.
1398 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1399 # [offset + (i-1) * width, offset + i * width)
1400 # where i ranges from 1 to num_finite_buckets, inclusive.
1401 # Must be strictly positive.
1402 },
1403 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
1404 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
1405 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1406 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1407 # where i ranges from 1 to num_finite_buckets inclusive.
1408 # Must be larger than 1.0.
1409 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1410 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1411 # where i ranges from 1 to num_finite_buckets inclusive.
1412 # Must be &gt; 0.
1413 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1414 # the total number of buckets is `num_finite_buckets` + 2.
1415 # See comments on `bucket_options` for details.
1416 },
1417 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
Bu Sun Kim65020912020-05-20 12:08:20 -07001418 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
1419 { # Exemplars are example points that may be used to annotate aggregated
1420 # distribution values. They are metadata that gives information about a
1421 # particular value added to a Distribution bucket, such as a trace ID that
1422 # was active when a value was added. They may contain further information,
1423 # such as a example values and timestamps, origin, etc.
1424 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
1425 # exemplar belongs.
Bu Sun Kim65020912020-05-20 12:08:20 -07001426 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
1427 #
1428 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
1429 #
1430 # Literal string: type.googleapis.com/google.protobuf.StringValue
1431 #
1432 # Labels dropped during aggregation:
1433 # type.googleapis.com/google.monitoring.v3.DroppedLabels
1434 #
1435 # There may be only a single attachment of any given message type in a
1436 # single exemplar, and this is enforced by the system.
1437 {
1438 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1439 },
1440 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001441 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001442 },
1443 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001444 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
1445 # zero then this field must be zero.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001446 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
1447 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
1448 # buckets. Note that a list of length N-1 defines N buckets because
1449 # of fenceposting. See comments on `bucket_options` for details.
1450 #
1451 # The i&#x27;th finite bucket covers the interval
1452 # [bound[i-1], bound[i])
1453 # where i ranges from 1 to bound_size() - 1. Note that there are no
1454 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
1455 # that special case the single bound defines the boundary between the
1456 # underflow and overflow buckets.
1457 #
1458 # bucket number lower bound upper bound
1459 # i == 0 (underflow) -inf bound[i]
1460 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
1461 # i == bound_size() (overflow) bound[i-1] +inf
1462 3.14,
1463 ],
1464 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001465 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001466 &quot;labels&quot;: { # The labels describing the metric value.
1467 # See comments on google.api.servicecontrol.v1.Operation.labels for
1468 # the overriding relationship.
1469 # Note that this map must not contain monitored resource labels.
1470 &quot;a_key&quot;: &quot;A String&quot;,
1471 },
1472 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001473 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
1474 # applies.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001475 &quot;boolValue&quot;: True or False, # A boolean value.
1476 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
1477 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
1478 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
1479 # The value must be between -999,999,999 and +999,999,999 inclusive.
1480 # If `units` is positive, `nanos` must be positive or zero.
1481 # If `units` is zero, `nanos` can be positive, zero, or negative.
1482 # If `units` is negative, `nanos` must be negative or zero.
1483 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1484 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
1485 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
1486 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
1487 },
1488 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001489 },
1490 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001491 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
Bu Sun Kim65020912020-05-20 12:08:20 -07001492 },
1493 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001494 &quot;userLabels&quot;: { # User defined labels for the resource that this operation is associated
1495 # with. Only a combination of 1000 user labels per consumer project are
1496 # allowed.
1497 &quot;a_key&quot;: &quot;A String&quot;,
1498 },
1499 &quot;logEntries&quot;: [ # Represents information to be logged.
1500 { # An individual log entry.
1501 &quot;textPayload&quot;: &quot;A String&quot;, # The log entry payload, represented as a Unicode string (UTF-8).
1502 &quot;sourceLocation&quot;: { # Additional information about the source code location that produced the log # Optional. Source code location information associated with the log entry,
1503 # if any.
1504 # entry.
1505 &quot;function&quot;: &quot;A String&quot;, # Optional. Human-readable name of the function or method being invoked, with
1506 # optional context such as the class or package name. This information may be
1507 # used in contexts such as the logs viewer, where a file and line number are
1508 # less meaningful. The format can vary by language. For example:
1509 # `qual.if.ied.Class.method` (Java), `dir/package.func` (Go), `function`
1510 # (Python).
1511 &quot;line&quot;: &quot;A String&quot;, # Optional. Line within the source file. 1-based; 0 indicates no line number
1512 # available.
1513 &quot;file&quot;: &quot;A String&quot;, # Optional. Source file name. Depending on the runtime environment, this
1514 # might be a simple name or a fully-qualified name.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001515 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001516 &quot;severity&quot;: &quot;A String&quot;, # The severity of the log entry. The default value is
1517 # `LogSeverity.DEFAULT`.
1518 &quot;structPayload&quot;: { # The log entry payload, represented as a structure that
1519 # is expressed as a JSON object.
1520 &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001521 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001522 &quot;labels&quot;: { # A set of user-defined (key, value) data that provides additional
1523 # information about the log entry.
1524 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001525 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001526 &quot;protoPayload&quot;: { # The log entry payload, represented as a protocol buffer that is
1527 # expressed as a JSON object. The only accepted type currently is
1528 # AuditLog.
1529 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1530 },
1531 &quot;httpRequest&quot;: { # A common proto for logging HTTP requests. Only contains semantics # Optional. Information about the HTTP request associated with this
1532 # log entry, if applicable.
1533 # defined by the HTTP specification. Product-specific logging
1534 # information MUST be defined in a separate message.
1535 &quot;protocol&quot;: &quot;A String&quot;, # Protocol used for the request. Examples: &quot;HTTP/1.1&quot;, &quot;HTTP/2&quot;, &quot;websocket&quot;
1536 &quot;cacheValidatedWithOriginServer&quot;: True or False, # Whether or not the response was validated with the origin server before
1537 # being served from cache. This field is only meaningful if `cache_hit` is
1538 # True.
1539 &quot;cacheFillBytes&quot;: &quot;A String&quot;, # The number of HTTP response bytes inserted into cache. Set only when a
1540 # cache fill was attempted.
1541 &quot;requestSize&quot;: &quot;A String&quot;, # The size of the HTTP request message in bytes, including the request
1542 # headers and the request body.
1543 &quot;responseSize&quot;: &quot;A String&quot;, # The size of the HTTP response message sent back to the client, in bytes,
1544 # including the response headers and the response body.
1545 &quot;serverIp&quot;: &quot;A String&quot;, # The IP address (IPv4 or IPv6) of the origin server that the request was
1546 # sent to.
1547 &quot;referer&quot;: &quot;A String&quot;, # The referer URL of the request, as defined in
1548 # [HTTP/1.1 Header Field
1549 # Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
1550 &quot;cacheHit&quot;: True or False, # Whether or not an entity was served from cache
1551 # (with or without validation).
1552 &quot;latency&quot;: &quot;A String&quot;, # The request processing latency on the server, from the time the request was
1553 # received until the response was sent.
1554 &quot;requestUrl&quot;: &quot;A String&quot;, # The scheme (http, https), the host name, the path, and the query
1555 # portion of the URL that was requested.
1556 # Example: `&quot;http://example.com/some/info?color=red&quot;`.
1557 &quot;cacheLookup&quot;: True or False, # Whether or not a cache lookup was attempted.
1558 &quot;requestMethod&quot;: &quot;A String&quot;, # The request method. Examples: `&quot;GET&quot;`, `&quot;HEAD&quot;`, `&quot;PUT&quot;`, `&quot;POST&quot;`.
1559 &quot;remoteIp&quot;: &quot;A String&quot;, # The IP address (IPv4 or IPv6) of the client that issued the HTTP
1560 # request. Examples: `&quot;192.168.1.1&quot;`, `&quot;FE80::0202:B3FF:FE1E:8329&quot;`.
1561 &quot;userAgent&quot;: &quot;A String&quot;, # The user agent sent by the client. Example:
1562 # `&quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET
1563 # CLR 1.0.3705)&quot;`.
1564 &quot;status&quot;: 42, # The response code indicating the status of the response.
1565 # Examples: 200, 404.
1566 },
1567 &quot;operation&quot;: { # Additional information about a potentially long-running operation with which # Optional. Information about an operation associated with the log entry, if
1568 # applicable.
1569 # a log entry is associated.
1570 &quot;first&quot;: True or False, # Optional. Set this to True if this is the first log entry in the operation.
1571 &quot;id&quot;: &quot;A String&quot;, # Optional. An arbitrary operation identifier. Log entries with the
1572 # same identifier are assumed to be part of the same operation.
1573 &quot;producer&quot;: &quot;A String&quot;, # Optional. An arbitrary producer identifier. The combination of
1574 # `id` and `producer` must be globally unique. Examples for `producer`:
1575 # `&quot;MyDivision.MyBigCompany.com&quot;`, `&quot;github.com/MyProject/MyApplication&quot;`.
1576 &quot;last&quot;: True or False, # Optional. Set this to True if this is the last log entry in the operation.
1577 },
1578 &quot;name&quot;: &quot;A String&quot;, # Required. The log to which this log entry belongs. Examples: `&quot;syslog&quot;`,
1579 # `&quot;book_log&quot;`.
1580 &quot;trace&quot;: &quot;A String&quot;, # Optional. Resource name of the trace associated with the log entry, if any.
1581 # If this field contains a relative resource name, you can assume the name is
1582 # relative to `//tracing.googleapis.com`. Example:
1583 # `projects/my-projectid/traces/06796866738c859f2f19b7cfb3214824`
1584 &quot;timestamp&quot;: &quot;A String&quot;, # The time the event described by the log entry occurred. If
1585 # omitted, defaults to operation start time.
1586 &quot;insertId&quot;: &quot;A String&quot;, # A unique ID for the log entry used for deduplication. If omitted,
1587 # the implementation will generate one based on operation_id.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001588 },
1589 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001590 &quot;importance&quot;: &quot;A String&quot;, # DO NOT USE. This is an experimental field.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001591 &quot;quotaProperties&quot;: { # Represents the properties needed for quota operations. # Represents the properties needed for quota check. Applicable only if this
1592 # operation is for a quota check request. If this is not specified, no quota
1593 # check will be performed.
1594 &quot;quotaMode&quot;: &quot;A String&quot;, # Quota mode for this operation.
1595 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001596 &quot;operationName&quot;: &quot;A String&quot;, # Fully qualified name of the operation. Reserved for future use.
1597 &quot;resources&quot;: [ # The resources that are involved in the operation.
1598 # The maximum supported number of entries in this field is 100.
1599 { # Describes a resource associated with this operation.
1600 &quot;resourceContainer&quot;: &quot;A String&quot;, # The identifier of the parent of this resource instance.
1601 # Must be in one of the following formats:
1602 # - “projects/&lt;project-id or project-number&gt;”
1603 # - “folders/&lt;folder-id&gt;”
1604 # - “organizations/&lt;organization-id&gt;”
1605 &quot;resourceName&quot;: &quot;A String&quot;, # Name of the resource. This is used for auditing purposes.
1606 &quot;resourceLocation&quot;: &quot;A String&quot;, # The location of the resource. If not empty, the resource will be checked
1607 # against location policy. The value must be a valid zone, region or
1608 # multiregion. For example: &quot;europe-west4&quot; or &quot;northamerica-northeast1-a&quot;
1609 },
1610 ],
1611 &quot;endTime&quot;: &quot;A String&quot;, # End time of the operation.
1612 # Required when the operation is used in ServiceController.Report,
1613 # but optional when the operation is used in ServiceController.Check.
1614 &quot;extensions&quot;: [ # Unimplemented.
1615 {
1616 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1617 },
1618 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001619 &quot;consumerId&quot;: &quot;A String&quot;, # Identity of the consumer who is using the service.
1620 # This field should be filled in for the operations initiated by a
1621 # consumer, but not for service-initiated operations that are
1622 # not related to a specific consumer.
1623 #
1624 # - This can be in one of the following formats:
1625 # - project:PROJECT_ID,
1626 # - project`_`number:PROJECT_NUMBER,
1627 # - projects/PROJECT_ID or PROJECT_NUMBER,
1628 # - folders/FOLDER_NUMBER,
1629 # - organizations/ORGANIZATION_NUMBER,
1630 # - api`_`key:API_KEY.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001631 },
1632 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001633 &quot;serviceConfigId&quot;: &quot;A String&quot;, # Specifies which version of service config should be used to process the
Jon Wayne Parrott692617a2017-01-06 09:58:29 -08001634 # request.
1635 #
1636 # If unspecified or no matching version can be found, the
1637 # latest one will be used.
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001638 }
1639
1640 x__xgafv: string, V1 error format.
1641 Allowed values
1642 1 - v1 error format
1643 2 - v2 error format
1644
1645Returns:
1646 An object of the form:
1647
1648 { # Response message for the Report method.
Bu Sun Kim65020912020-05-20 12:08:20 -07001649 &quot;reportInfos&quot;: [ # Quota usage for each quota release `Operation` request.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001650 #
1651 # Fully or partially failed quota release request may or may not be present
1652 # in `report_quota_info`. For example, a failed quota release request will
1653 # have the current quota usage info when precise quota library returns the
1654 # info. A deadline exceeded quota request will not have quota usage info.
1655 #
1656 # If there is no quota release request, report_quota_info will be empty.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001657 { # Contains additional info about the report operation.
Bu Sun Kim65020912020-05-20 12:08:20 -07001658 &quot;quotaInfo&quot;: { # Contains the quota information for a quota check response. # Quota usage info when processing the `Operation`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001659 &quot;quotaMetrics&quot;: [ # Quota metrics to indicate the usage. Depending on the check request, one or
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001660 # more of the following metrics will be included:
1661 #
1662 # 1. For rate quota, per quota group or per quota metric incremental usage
1663 # will be specified using the following delta metric:
Bu Sun Kim65020912020-05-20 12:08:20 -07001664 # &quot;serviceruntime.googleapis.com/api/consumer/quota_used_count&quot;
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001665 #
1666 # 2. For allocation quota, per quota metric total usage will be specified
1667 # using the following gauge metric:
Bu Sun Kim65020912020-05-20 12:08:20 -07001668 # &quot;serviceruntime.googleapis.com/allocation/consumer/quota_used_count&quot;
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001669 #
1670 # 3. For both rate quota and allocation quota, the quota limit reached
1671 # condition will be specified using the following boolean metric:
Bu Sun Kim65020912020-05-20 12:08:20 -07001672 # &quot;serviceruntime.googleapis.com/quota/exceeded&quot;
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001673 { # Represents a set of metric values in the same metric.
1674 # Each metric value in the set should have a unique combination of start time,
1675 # end time, and label values.
Bu Sun Kim65020912020-05-20 12:08:20 -07001676 &quot;metricValues&quot;: [ # The values in this metric.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001677 { # Represents a single metric value.
Bu Sun Kim65020912020-05-20 12:08:20 -07001678 &quot;startTime&quot;: &quot;A String&quot;, # The start of the time period over which this metric value&#x27;s measurement
1679 # applies. The time period has different semantics for different metric
1680 # types (cumulative, delta, and gauge). See the metric definition
1681 # documentation in the service configuration for details.
Bu Sun Kim65020912020-05-20 12:08:20 -07001682 &quot;distributionValue&quot;: { # Distribution represents a frequency distribution of double-valued sample # A distribution value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001683 # points. It contains the size of the population of sample points plus
1684 # additional optional information:
1685 #
1686 # - the arithmetic mean of the samples
1687 # - the minimum and maximum of the samples
1688 # - the sum-squared-deviation of the samples, used to compute variance
1689 # - a histogram of the values of the sample points
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001690 &quot;bucketCounts&quot;: [ # The number of samples in each histogram bucket. `bucket_counts` are
1691 # optional. If present, they must sum to the `count` value.
1692 #
1693 # The buckets are defined below in `bucket_option`. There are N buckets.
1694 # `bucket_counts[0]` is the number of samples in the underflow bucket.
1695 # `bucket_counts[1]` to `bucket_counts[N-1]` are the numbers of samples
1696 # in each of the finite buckets. And `bucket_counts[N] is the number
1697 # of samples in the overflow bucket. See the comments of `bucket_option`
1698 # below for more details.
1699 #
1700 # Any suffix of trailing zeros may be omitted.
1701 &quot;A String&quot;,
1702 ],
1703 &quot;count&quot;: &quot;A String&quot;, # The total number of samples in the distribution. Must be &gt;= 0.
Bu Sun Kim65020912020-05-20 12:08:20 -07001704 &quot;sumOfSquaredDeviation&quot;: 3.14, # The sum of squared deviations from the mean:
Dan O'Mearadd494642020-05-01 07:42:23 -07001705 # Sum[i=1..count]((x_i - mean)^2)
1706 # where each x_i is a sample values. If `count` is zero then this field
1707 # must be zero, otherwise validation of the request fails.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001708 &quot;linearBuckets&quot;: { # Describing buckets with constant width. # Buckets with constant width.
1709 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1710 # the total number of buckets is `num_finite_buckets` + 2.
1711 # See comments on `bucket_options` for details.
1712 &quot;offset&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1713 # [offset + (i-1) * width, offset + i * width)
1714 # where i ranges from 1 to num_finite_buckets, inclusive.
1715 &quot;width&quot;: 3.14, # The i&#x27;th linear bucket covers the interval
1716 # [offset + (i-1) * width, offset + i * width)
1717 # where i ranges from 1 to num_finite_buckets, inclusive.
1718 # Must be strictly positive.
1719 },
1720 &quot;maximum&quot;: 3.14, # The maximum of the population of values. Ignored if `count` is zero.
1721 &quot;exponentialBuckets&quot;: { # Describing buckets with exponentially growing width. # Buckets with exponentially growing width.
1722 &quot;growthFactor&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1723 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1724 # where i ranges from 1 to num_finite_buckets inclusive.
1725 # Must be larger than 1.0.
1726 &quot;scale&quot;: 3.14, # The i&#x27;th exponential bucket covers the interval
1727 # [scale * growth_factor^(i-1), scale * growth_factor^i)
1728 # where i ranges from 1 to num_finite_buckets inclusive.
1729 # Must be &gt; 0.
1730 &quot;numFiniteBuckets&quot;: 42, # The number of finite buckets. With the underflow and overflow buckets,
1731 # the total number of buckets is `num_finite_buckets` + 2.
1732 # See comments on `bucket_options` for details.
1733 },
1734 &quot;minimum&quot;: 3.14, # The minimum of the population of values. Ignored if `count` is zero.
Bu Sun Kim65020912020-05-20 12:08:20 -07001735 &quot;exemplars&quot;: [ # Example points. Must be in increasing order of `value` field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001736 { # Exemplars are example points that may be used to annotate aggregated
1737 # distribution values. They are metadata that gives information about a
1738 # particular value added to a Distribution bucket, such as a trace ID that
1739 # was active when a value was added. They may contain further information,
1740 # such as a example values and timestamps, origin, etc.
Bu Sun Kim65020912020-05-20 12:08:20 -07001741 &quot;value&quot;: 3.14, # Value of the exemplar point. This value determines to which bucket the
1742 # exemplar belongs.
Bu Sun Kim65020912020-05-20 12:08:20 -07001743 &quot;attachments&quot;: [ # Contextual information about the example value. Examples are:
Dan O'Mearadd494642020-05-01 07:42:23 -07001744 #
1745 # Trace: type.googleapis.com/google.monitoring.v3.SpanContext
1746 #
1747 # Literal string: type.googleapis.com/google.protobuf.StringValue
1748 #
1749 # Labels dropped during aggregation:
1750 # type.googleapis.com/google.monitoring.v3.DroppedLabels
1751 #
1752 # There may be only a single attachment of any given message type in a
1753 # single exemplar, and this is enforced by the system.
1754 {
Bu Sun Kim65020912020-05-20 12:08:20 -07001755 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -07001756 },
1757 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001758 &quot;timestamp&quot;: &quot;A String&quot;, # The observation (sampling) time of the above value.
Dan O'Mearadd494642020-05-01 07:42:23 -07001759 },
1760 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001761 &quot;mean&quot;: 3.14, # The arithmetic mean of the samples in the distribution. If `count` is
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001762 # zero then this field must be zero.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001763 &quot;explicitBuckets&quot;: { # Describing buckets with arbitrary user-provided width. # Buckets with arbitrary user-provided width.
1764 &quot;bounds&quot;: [ # &#x27;bound&#x27; is a list of strictly increasing boundaries between
1765 # buckets. Note that a list of length N-1 defines N buckets because
1766 # of fenceposting. See comments on `bucket_options` for details.
1767 #
1768 # The i&#x27;th finite bucket covers the interval
1769 # [bound[i-1], bound[i])
1770 # where i ranges from 1 to bound_size() - 1. Note that there are no
1771 # finite buckets at all if &#x27;bound&#x27; only contains a single element; in
1772 # that special case the single bound defines the boundary between the
1773 # underflow and overflow buckets.
1774 #
1775 # bucket number lower bound upper bound
1776 # i == 0 (underflow) -inf bound[i]
1777 # 0 &lt; i &lt; bound_size() bound[i-1] bound[i]
1778 # i == bound_size() (overflow) bound[i-1] +inf
1779 3.14,
1780 ],
1781 },
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001782 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001783 &quot;labels&quot;: { # The labels describing the metric value.
1784 # See comments on google.api.servicecontrol.v1.Operation.labels for
1785 # the overriding relationship.
1786 # Note that this map must not contain monitored resource labels.
1787 &quot;a_key&quot;: &quot;A String&quot;,
1788 },
1789 &quot;doubleValue&quot;: 3.14, # A double precision floating point value.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001790 &quot;endTime&quot;: &quot;A String&quot;, # The end of the time period over which this metric value&#x27;s measurement
1791 # applies.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001792 &quot;boolValue&quot;: True or False, # A boolean value.
1793 &quot;int64Value&quot;: &quot;A String&quot;, # A signed 64-bit integer value.
1794 &quot;moneyValue&quot;: { # Represents an amount of money with its currency type. # A money value.
1795 &quot;nanos&quot;: 42, # Number of nano (10^-9) units of the amount.
1796 # The value must be between -999,999,999 and +999,999,999 inclusive.
1797 # If `units` is positive, `nanos` must be positive or zero.
1798 # If `units` is zero, `nanos` can be positive, zero, or negative.
1799 # If `units` is negative, `nanos` must be negative or zero.
1800 # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1801 &quot;currencyCode&quot;: &quot;A String&quot;, # The 3-letter currency code defined in ISO 4217.
1802 &quot;units&quot;: &quot;A String&quot;, # The whole units of the amount.
1803 # For example if `currencyCode` is `&quot;USD&quot;`, then 1 unit is one US dollar.
1804 },
1805 &quot;stringValue&quot;: &quot;A String&quot;, # A text string value.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001806 },
1807 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001808 &quot;metricName&quot;: &quot;A String&quot;, # The metric name defined in the service configuration.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001809 },
1810 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001811 &quot;limitExceeded&quot;: [ # Quota Metrics that have exceeded quota limits.
1812 # For QuotaGroup-based quota, this is QuotaGroup.name
1813 # For QuotaLimit-based quota, this is QuotaLimit.name
1814 # See: google.api.Quota
1815 # Deprecated: Use quota_metrics to get per quota group limit exceeded status.
1816 &quot;A String&quot;,
1817 ],
1818 &quot;quotaConsumed&quot;: { # Map of quota group name to the actual number of tokens consumed. If the
1819 # quota check was not successful, then this will not be populated due to no
1820 # quota consumption.
1821 #
1822 # We are not merging this field with &#x27;quota_metrics&#x27; field because of the
1823 # complexity of scaling in Chemist client code base. For simplicity, we will
1824 # keep this field for Castor (that scales quota usage) and &#x27;quota_metrics&#x27;
1825 # for SuperQuota (that doesn&#x27;t scale quota usage).
1826 &quot;a_key&quot;: 42,
1827 },
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001828 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001829 &quot;operationId&quot;: &quot;A String&quot;, # The Operation.operation_id value from the request.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001830 },
1831 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001832 &quot;serviceRolloutId&quot;: &quot;A String&quot;, # The current service rollout id used to process the request.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001833 &quot;reportErrors&quot;: [ # Partial failures, one for each `Operation` in the request that failed
1834 # processing. There are three possible combinations of the RPC status:
1835 #
1836 # 1. The combination of a successful RPC status and an empty `report_errors`
1837 # list indicates a complete success where all `Operations` in the
1838 # request are processed successfully.
1839 # 2. The combination of a successful RPC status and a non-empty
1840 # `report_errors` list indicates a partial success where some
1841 # `Operations` in the request succeeded. Each
1842 # `Operation` that failed processing has a corresponding item
1843 # in this list.
1844 # 3. A failed RPC status indicates a general non-deterministic failure.
1845 # When this happens, it&#x27;s impossible to know which of the
1846 # &#x27;Operations&#x27; in the request succeeded or failed.
1847 { # Represents the processing error of one Operation in the request.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001848 &quot;status&quot;: { # The `Status` type defines a logical error model that is suitable for # Details of the error when processing the Operation.
1849 # different programming environments, including REST APIs and RPC APIs. It is
1850 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1851 # three pieces of data: error code, error message, and error details.
1852 #
1853 # You can find out more about this error model and how to work with it in the
1854 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001855 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
1856 # user-facing error message should be localized and sent in the
1857 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001858 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001859 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
1860 # message types for APIs to use.
1861 {
1862 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1863 },
1864 ],
1865 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001866 &quot;operationId&quot;: &quot;A String&quot;, # The Operation.operation_id value from the request.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001867 },
1868 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001869 &quot;serviceConfigId&quot;: &quot;A String&quot;, # The actual config id used to process the request.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001870 }</pre>
1871</div>
1872
Jon Wayne Parrott7d5badb2016-08-16 12:44:29 -07001873</body></html>