google-cloud-trace 0.36.1 → 0.37.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 39f13e61c0398f285ab330c2f3951b336488c6c5f4a6546a466834c6945e1fc2
4
- data.tar.gz: 738f8ca80e0e0e2dd7fb6d89c3b197c9f487ede889cda9beeaf22560e21b4613
3
+ metadata.gz: 384b1cafe16ad5de310f82ade0a2fe59941cb76ca5cd9a23dabceb3d59df0d5d
4
+ data.tar.gz: 74c9edde35e5de3a9b780a3e352a4713b09b90d84a351686b43d02b24ead6bea
5
5
  SHA512:
6
- metadata.gz: 38b1dd28f17d60916423fa5f27f64741e3baf7cceef9ec7c19fc6aa24c77935e5a4f34d99157ea23fe8bec4c043ef3a1afdad4f8b68c8a90f8bb0d5c1df4a18a
7
- data.tar.gz: 4a4beb2c0c97f59318125c3154752e20a060a5e87d0abcbacc2d472ce737ebb4c96573c8303cff84c27532c9d2d23cb7b654ce2871665f9aa758ab16d5c6abb2
6
+ metadata.gz: 01a6f53b2db9df587f396421db83b4861beae464f5fb36cddfbe7b7457750f8e760bfcfdb994a374aa583e253fabc2ebb3806aa75faaa1f47460dbcbc509634e
7
+ data.tar.gz: 237e306b7ea598485bfa475740cfd8e956ed62d52e8f16d5aa67b2ffe752c837bd96a3e7bbd6ff40ea8a030b7fd91b21da169ab02e4c2166f5829cbdc7e2cbd2
@@ -1,5 +1,22 @@
1
1
  # Release History
2
2
 
3
+ ### 0.37.0 / 2019-12-19
4
+
5
+ #### Features
6
+
7
+ * Introduce enable_cross_project_tracing option to the Faraday middleware
8
+
9
+ #### Bug Fixes
10
+
11
+ * Fix MonitorMixin usage on Ruby 2.7
12
+ * Ruby 2.7 will error if new_cond is called before super()
13
+ * Make the call to super() be the first call in initialize where possible
14
+
15
+ #### Performance Improvements
16
+
17
+ * Remove TraceServiceClient.span_path from the lower-level API
18
+ * Update network configuration
19
+
3
20
  ### 0.36.1 / 2019-11-06
4
21
 
5
22
  #### Bug Fixes
@@ -38,6 +38,9 @@ module Google
38
38
  # @private Creates a new AsyncReporter instance.
39
39
  def initialize service, max_count: 1000, max_bytes: 4000000,
40
40
  max_queue: 100, interval: 5, threads: 10
41
+ # init MonitorMixin
42
+ super()
43
+
41
44
  @service = service
42
45
 
43
46
  @max_count = max_count
@@ -52,9 +55,6 @@ module Google
52
55
 
53
56
  # Make sure all buffered messages are sent when process exits.
54
57
  at_exit { stop! }
55
-
56
- # init MonitorMixin
57
- super()
58
58
  end
59
59
 
60
60
  ##
@@ -20,11 +20,37 @@ module Google
20
20
  module Cloud
21
21
  module Trace
22
22
  class FaradayMiddleware < Faraday::Middleware
23
+ ##
24
+ # # Trace FaradayMiddleware
25
+ #
26
+ # A faraday middleware that setup request/response labels for trace.
27
+ #
28
+ # ## Installing
29
+ #
30
+ # To use this middleware, simply install it in your middleware stack.
31
+ # Here is an example configuration enable the Trace middleware:
32
+ #
33
+ # ```ruby
34
+ # conn = Faraday.new(:url => 'http://example.com') do |faraday|
35
+ # # enable cross project tracing with option to true
36
+ # faraday.use Google::Cloud::Trace, enable_cross_project_tracing: true
37
+ # faraday.request :url_encoded # form-encode POST params
38
+ # faraday.response :logger # log requests to $stdout
39
+ # faraday.adapter Faraday.default_adapter # use Net::HTTP adapter
40
+ # end
41
+ # ```
42
+
43
+ def initialize app, enable_cross_project_tracing: false
44
+ super(app)
45
+ @enable_cross_project_tracing = enable_cross_project_tracing || false
46
+ end
47
+
23
48
  ##
24
49
  # Create a Trace span with the HTTP request/response information.
25
50
  def call env
26
51
  Google::Cloud::Trace.in_span "faraday_request" do |span|
27
52
  add_request_labels span, env if span
53
+ add_trace_context_header env if @enable_cross_project_tracing
28
54
 
29
55
  response = @app.call env
30
56
 
@@ -84,6 +110,14 @@ module Google
84
110
  def set_label labels, key, value
85
111
  labels[key] = value if value.is_a? ::String
86
112
  end
113
+
114
+ ##
115
+ # @private Add X-Cloud-Trace-Context for request header
116
+ def add_trace_context_header env
117
+ if (trace_ctx = Stackdriver::Core::TraceContext.get)
118
+ env[:request_headers]["X-Cloud-Trace-Context"] = trace_ctx.to_string
119
+ end
120
+ end
87
121
  end
88
122
  end
89
123
  end
@@ -26,7 +26,8 @@ module Google
26
26
  # @!attribute [rw] trace_id
27
27
  # @return [String]
28
28
  # Globally unique identifier for the trace. This identifier is a 128-bit
29
- # numeric value formatted as a 32-byte hex string.
29
+ # numeric value formatted as a 32-byte hex string. For example,
30
+ # `382d4f4c6b7bb2f4a972559d9085001d`.
30
31
  # @!attribute [rw] spans
31
32
  # @return [Array<Google::Devtools::Cloudtrace::V1::TraceSpan>]
32
33
  # Collection of spans in the trace.
@@ -46,7 +47,7 @@ module Google
46
47
  # @!attribute [rw] span_id
47
48
  # @return [Integer]
48
49
  # Identifier for the span. Must be a 64-bit integer other than 0 and
49
- # unique within a trace.
50
+ # unique within a trace. For example, `2205310701640571284`.
50
51
  # @!attribute [rw] kind
51
52
  # @return [Google::Devtools::Cloudtrace::V1::TraceSpan::SpanKind]
52
53
  # Distinguishes between spans generated in a particular context. For example,
@@ -69,7 +70,7 @@ module Google
69
70
  # End time of the span in nanoseconds from the UNIX epoch.
70
71
  # @!attribute [rw] parent_span_id
71
72
  # @return [Integer]
72
- # ID of the parent span, if any. Optional.
73
+ # Optional. ID of the parent span, if any.
73
74
  # @!attribute [rw] labels
74
75
  # @return [Hash{String => String}]
75
76
  # Collection of labels associated with the span. Label keys must be less than
@@ -128,20 +129,20 @@ module Google
128
129
  # unless specified.
129
130
  # @!attribute [rw] project_id
130
131
  # @return [String]
131
- # ID of the Cloud project where the trace data is stored.
132
+ # Required. ID of the Cloud project where the trace data is stored.
132
133
  # @!attribute [rw] view
133
134
  # @return [Google::Devtools::Cloudtrace::V1::ListTracesRequest::ViewType]
134
- # Type of data returned for traces in the list. Optional. Default is
135
+ # Optional. Type of data returned for traces in the list. Default is
135
136
  # `MINIMAL`.
136
137
  # @!attribute [rw] page_size
137
138
  # @return [Integer]
138
- # Maximum number of traces to return. If not specified or <= 0, the
139
+ # Optional. Maximum number of traces to return. If not specified or <= 0, the
139
140
  # implementation selects a reasonable value. The implementation may
140
- # return fewer traces than the requested page size. Optional.
141
+ # return fewer traces than the requested page size.
141
142
  # @!attribute [rw] page_token
142
143
  # @return [String]
143
144
  # Token identifying the page of results to return. If provided, use the
144
- # value of the `next_page_token` field from a previous request. Optional.
145
+ # value of the `next_page_token` field from a previous request.
145
146
  # @!attribute [rw] start_time
146
147
  # @return [Google::Protobuf::Timestamp]
147
148
  # Start of the time interval (inclusive) during which the trace data was
@@ -152,7 +153,7 @@ module Google
152
153
  # collected from the application.
153
154
  # @!attribute [rw] filter
154
155
  # @return [String]
155
- # An optional filter against labels for the request.
156
+ # Optional. A filter against labels for the request.
156
157
  #
157
158
  # By default, searches use prefix matching. To specify exact match, prepend
158
159
  # a plus symbol (`+`) to the search term.
@@ -184,7 +185,7 @@ module Google
184
185
  # * `url:VALUE`: Equivalent to `/http/url:VALUE`.
185
186
  # @!attribute [rw] order_by
186
187
  # @return [String]
187
- # Field used to sort the returned traces. Optional.
188
+ # Optional. Field used to sort the returned traces.
188
189
  # Can be one of the following:
189
190
  #
190
191
  # * `trace_id`
@@ -221,7 +222,7 @@ module Google
221
222
  # The response message for the `ListTraces` method.
222
223
  # @!attribute [rw] traces
223
224
  # @return [Array<Google::Devtools::Cloudtrace::V1::Trace>]
224
- # List of trace records returned.
225
+ # List of trace records as specified by the view parameter.
225
226
  # @!attribute [rw] next_page_token
226
227
  # @return [String]
227
228
  # If defined, indicates that there are more traces that match the request
@@ -232,19 +233,19 @@ module Google
232
233
  # The request message for the `GetTrace` method.
233
234
  # @!attribute [rw] project_id
234
235
  # @return [String]
235
- # ID of the Cloud project where the trace data is stored.
236
+ # Required. ID of the Cloud project where the trace data is stored.
236
237
  # @!attribute [rw] trace_id
237
238
  # @return [String]
238
- # ID of the trace to return.
239
+ # Required. ID of the trace to return.
239
240
  class GetTraceRequest; end
240
241
 
241
242
  # The request message for the `PatchTraces` method.
242
243
  # @!attribute [rw] project_id
243
244
  # @return [String]
244
- # ID of the Cloud project where the trace data is stored.
245
+ # Required. ID of the Cloud project where the trace data is stored.
245
246
  # @!attribute [rw] traces
246
247
  # @return [Google::Devtools::Cloudtrace::V1::Traces]
247
- # The body of the message.
248
+ # Required. The body of the message.
248
249
  class PatchTracesRequest; end
249
250
  end
250
251
  end
@@ -183,9 +183,9 @@ module Google
183
183
  &Google::Devtools::Cloudtrace::V1::TraceService::Stub.method(:new)
184
184
  )
185
185
 
186
- @patch_traces = Google::Gax.create_api_call(
187
- @trace_service_stub.method(:patch_traces),
188
- defaults["patch_traces"],
186
+ @list_traces = Google::Gax.create_api_call(
187
+ @trace_service_stub.method(:list_traces),
188
+ defaults["list_traces"],
189
189
  exception_transformer: exception_transformer,
190
190
  params_extractor: proc do |request|
191
191
  {'project_id' => request.project_id}
@@ -196,9 +196,9 @@ module Google
196
196
  defaults["get_trace"],
197
197
  exception_transformer: exception_transformer
198
198
  )
199
- @list_traces = Google::Gax.create_api_call(
200
- @trace_service_stub.method(:list_traces),
201
- defaults["list_traces"],
199
+ @patch_traces = Google::Gax.create_api_call(
200
+ @trace_service_stub.method(:patch_traces),
201
+ defaults["patch_traces"],
202
202
  exception_transformer: exception_transformer,
203
203
  params_extractor: proc do |request|
204
204
  {'project_id' => request.project_id}
@@ -208,96 +208,12 @@ module Google
208
208
 
209
209
  # Service calls
210
210
 
211
- # Sends new traces to Stackdriver Trace or updates existing traces. If the ID
212
- # of a trace that you send matches that of an existing trace, any fields
213
- # in the existing trace and its spans are overwritten by the provided values,
214
- # and any new fields provided are merged with the existing trace data. If the
215
- # ID does not match, a new trace is created.
216
- #
217
- # @param project_id [String]
218
- # ID of the Cloud project where the trace data is stored.
219
- # @param traces [Google::Devtools::Cloudtrace::V1::Traces | Hash]
220
- # The body of the message.
221
- # A hash of the same form as `Google::Devtools::Cloudtrace::V1::Traces`
222
- # can also be provided.
223
- # @param options [Google::Gax::CallOptions]
224
- # Overrides the default settings for this call, e.g, timeout,
225
- # retries, etc.
226
- # @yield [result, operation] Access the result along with the RPC operation
227
- # @yieldparam result []
228
- # @yieldparam operation [GRPC::ActiveCall::Operation]
229
- # @raise [Google::Gax::GaxError] if the RPC is aborted.
230
- # @example
231
- # require "google/cloud/trace"
232
- #
233
- # trace_client = Google::Cloud::Trace.new(version: :v1)
234
- #
235
- # # TODO: Initialize `project_id`:
236
- # project_id = ''
237
- #
238
- # # TODO: Initialize `traces`:
239
- # traces = {}
240
- # trace_client.patch_traces(project_id, traces)
241
-
242
- def patch_traces \
243
- project_id,
244
- traces,
245
- options: nil,
246
- &block
247
- req = {
248
- project_id: project_id,
249
- traces: traces
250
- }.delete_if { |_, v| v.nil? }
251
- req = Google::Gax::to_proto(req, Google::Devtools::Cloudtrace::V1::PatchTracesRequest)
252
- @patch_traces.call(req, options, &block)
253
- nil
254
- end
255
-
256
- # Gets a single trace by its ID.
257
- #
258
- # @param project_id [String]
259
- # ID of the Cloud project where the trace data is stored.
260
- # @param trace_id [String]
261
- # ID of the trace to return.
262
- # @param options [Google::Gax::CallOptions]
263
- # Overrides the default settings for this call, e.g, timeout,
264
- # retries, etc.
265
- # @yield [result, operation] Access the result along with the RPC operation
266
- # @yieldparam result [Google::Devtools::Cloudtrace::V1::Trace]
267
- # @yieldparam operation [GRPC::ActiveCall::Operation]
268
- # @return [Google::Devtools::Cloudtrace::V1::Trace]
269
- # @raise [Google::Gax::GaxError] if the RPC is aborted.
270
- # @example
271
- # require "google/cloud/trace"
272
- #
273
- # trace_client = Google::Cloud::Trace.new(version: :v1)
274
- #
275
- # # TODO: Initialize `project_id`:
276
- # project_id = ''
277
- #
278
- # # TODO: Initialize `trace_id`:
279
- # trace_id = ''
280
- # response = trace_client.get_trace(project_id, trace_id)
281
-
282
- def get_trace \
283
- project_id,
284
- trace_id,
285
- options: nil,
286
- &block
287
- req = {
288
- project_id: project_id,
289
- trace_id: trace_id
290
- }.delete_if { |_, v| v.nil? }
291
- req = Google::Gax::to_proto(req, Google::Devtools::Cloudtrace::V1::GetTraceRequest)
292
- @get_trace.call(req, options, &block)
293
- end
294
-
295
211
  # Returns of a list of traces that match the specified filter conditions.
296
212
  #
297
213
  # @param project_id [String]
298
- # ID of the Cloud project where the trace data is stored.
214
+ # Required. ID of the Cloud project where the trace data is stored.
299
215
  # @param view [Google::Devtools::Cloudtrace::V1::ListTracesRequest::ViewType]
300
- # Type of data returned for traces in the list. Optional. Default is
216
+ # Optional. Type of data returned for traces in the list. Default is
301
217
  # `MINIMAL`.
302
218
  # @param page_size [Integer]
303
219
  # The maximum number of resources contained in the underlying API
@@ -316,7 +232,7 @@ module Google
316
232
  # A hash of the same form as `Google::Protobuf::Timestamp`
317
233
  # can also be provided.
318
234
  # @param filter [String]
319
- # An optional filter against labels for the request.
235
+ # Optional. A filter against labels for the request.
320
236
  #
321
237
  # By default, searches use prefix matching. To specify exact match, prepend
322
238
  # a plus symbol (`+`) to the search term.
@@ -347,7 +263,7 @@ module Google
347
263
  # * `method:VALUE`: Equivalent to `/http/method:VALUE`.
348
264
  # * `url:VALUE`: Equivalent to `/http/url:VALUE`.
349
265
  # @param order_by [String]
350
- # Field used to sort the returned traces. Optional.
266
+ # Optional. Field used to sort the returned traces.
351
267
  # Can be one of the following:
352
268
  #
353
269
  # * `trace_id`
@@ -415,6 +331,90 @@ module Google
415
331
  req = Google::Gax::to_proto(req, Google::Devtools::Cloudtrace::V1::ListTracesRequest)
416
332
  @list_traces.call(req, options, &block)
417
333
  end
334
+
335
+ # Gets a single trace by its ID.
336
+ #
337
+ # @param project_id [String]
338
+ # Required. ID of the Cloud project where the trace data is stored.
339
+ # @param trace_id [String]
340
+ # Required. ID of the trace to return.
341
+ # @param options [Google::Gax::CallOptions]
342
+ # Overrides the default settings for this call, e.g, timeout,
343
+ # retries, etc.
344
+ # @yield [result, operation] Access the result along with the RPC operation
345
+ # @yieldparam result [Google::Devtools::Cloudtrace::V1::Trace]
346
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
347
+ # @return [Google::Devtools::Cloudtrace::V1::Trace]
348
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
349
+ # @example
350
+ # require "google/cloud/trace"
351
+ #
352
+ # trace_client = Google::Cloud::Trace.new(version: :v1)
353
+ #
354
+ # # TODO: Initialize `project_id`:
355
+ # project_id = ''
356
+ #
357
+ # # TODO: Initialize `trace_id`:
358
+ # trace_id = ''
359
+ # response = trace_client.get_trace(project_id, trace_id)
360
+
361
+ def get_trace \
362
+ project_id,
363
+ trace_id,
364
+ options: nil,
365
+ &block
366
+ req = {
367
+ project_id: project_id,
368
+ trace_id: trace_id
369
+ }.delete_if { |_, v| v.nil? }
370
+ req = Google::Gax::to_proto(req, Google::Devtools::Cloudtrace::V1::GetTraceRequest)
371
+ @get_trace.call(req, options, &block)
372
+ end
373
+
374
+ # Sends new traces to Stackdriver Trace or updates existing traces. If the ID
375
+ # of a trace that you send matches that of an existing trace, any fields
376
+ # in the existing trace and its spans are overwritten by the provided values,
377
+ # and any new fields provided are merged with the existing trace data. If the
378
+ # ID does not match, a new trace is created.
379
+ #
380
+ # @param project_id [String]
381
+ # Required. ID of the Cloud project where the trace data is stored.
382
+ # @param traces [Google::Devtools::Cloudtrace::V1::Traces | Hash]
383
+ # Required. The body of the message.
384
+ # A hash of the same form as `Google::Devtools::Cloudtrace::V1::Traces`
385
+ # can also be provided.
386
+ # @param options [Google::Gax::CallOptions]
387
+ # Overrides the default settings for this call, e.g, timeout,
388
+ # retries, etc.
389
+ # @yield [result, operation] Access the result along with the RPC operation
390
+ # @yieldparam result []
391
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
392
+ # @raise [Google::Gax::GaxError] if the RPC is aborted.
393
+ # @example
394
+ # require "google/cloud/trace"
395
+ #
396
+ # trace_client = Google::Cloud::Trace.new(version: :v1)
397
+ #
398
+ # # TODO: Initialize `project_id`:
399
+ # project_id = ''
400
+ #
401
+ # # TODO: Initialize `traces`:
402
+ # traces = {}
403
+ # trace_client.patch_traces(project_id, traces)
404
+
405
+ def patch_traces \
406
+ project_id,
407
+ traces,
408
+ options: nil,
409
+ &block
410
+ req = {
411
+ project_id: project_id,
412
+ traces: traces
413
+ }.delete_if { |_, v| v.nil? }
414
+ req = Google::Gax::to_proto(req, Google::Devtools::Cloudtrace::V1::PatchTracesRequest)
415
+ @patch_traces.call(req, options, &block)
416
+ nil
417
+ end
418
418
  end
419
419
  end
420
420
  end
@@ -11,16 +11,16 @@
11
11
  "retry_params": {
12
12
  "default": {
13
13
  "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.2,
15
- "max_retry_delay_millis": 1000,
14
+ "retry_delay_multiplier": 1.3,
15
+ "max_retry_delay_millis": 60000,
16
16
  "initial_rpc_timeout_millis": 20000,
17
- "rpc_timeout_multiplier": 1.5,
18
- "max_rpc_timeout_millis": 30000,
19
- "total_timeout_millis": 45000
17
+ "rpc_timeout_multiplier": 1.0,
18
+ "max_rpc_timeout_millis": 20000,
19
+ "total_timeout_millis": 600000
20
20
  }
21
21
  },
22
22
  "methods": {
23
- "PatchTraces": {
23
+ "ListTraces": {
24
24
  "timeout_millis": 60000,
25
25
  "retry_codes_name": "idempotent",
26
26
  "retry_params_name": "default"
@@ -30,9 +30,9 @@
30
30
  "retry_codes_name": "idempotent",
31
31
  "retry_params_name": "default"
32
32
  },
33
- "ListTraces": {
33
+ "PatchTraces": {
34
34
  "timeout_millis": 60000,
35
- "retry_codes_name": "idempotent",
35
+ "retry_codes_name": "non_idempotent",
36
36
  "retry_params_name": "default"
37
37
  }
38
38
  }
@@ -76,24 +76,24 @@ module Google
76
76
  # Links associated with the span. You can have up to 128 links per Span.
77
77
  # @!attribute [rw] status
78
78
  # @return [Google::Rpc::Status]
79
- # An optional final status for this span.
79
+ # Optional. The final status for this span.
80
80
  # @!attribute [rw] same_process_as_parent_span
81
81
  # @return [Google::Protobuf::BoolValue]
82
- # (Optional) Set this parameter to indicate whether this span is in
82
+ # Optional. Set this parameter to indicate whether this span is in
83
83
  # the same process as its parent. If you do not set this parameter,
84
84
  # Stackdriver Trace is unable to take advantage of this helpful
85
85
  # information.
86
86
  # @!attribute [rw] child_span_count
87
87
  # @return [Google::Protobuf::Int32Value]
88
- # An optional number of child spans that were generated while this span
88
+ # Optional. The number of child spans that were generated while this span
89
89
  # was active. If set, allows implementation to detect missing child spans.
90
90
  class Span
91
91
  # A set of attributes, each in the format `[KEY]:[VALUE]`.
92
92
  # @!attribute [rw] attribute_map
93
93
  # @return [Hash{String => Google::Devtools::Cloudtrace::V2::AttributeValue}]
94
94
  # The set of attributes. Each attribute's key can be up to 128 bytes
95
- # long. The value can be a string up to 256 bytes, an integer, or the
96
- # Boolean values `true` and `false`. For example:
95
+ # long. The value can be a string up to 256 bytes, a signed 64-bit integer,
96
+ # or the Boolean values `true` and `false`. For example:
97
97
  #
98
98
  # "/instance_id": "my-instance"
99
99
  # "/http/user_agent": ""
@@ -24,7 +24,7 @@ module Google
24
24
  # `projects/[PROJECT_ID]`.
25
25
  # @!attribute [rw] spans
26
26
  # @return [Array<Google::Devtools::Cloudtrace::V2::Span>]
27
- # A list of new spans. The span names must not match existing
27
+ # Required. A list of new spans. The span names must not match existing
28
28
  # spans, or the results are undefined.
29
29
  class BatchWriteSpansRequest; end
30
30
  end
@@ -70,12 +70,6 @@ module Google
70
70
 
71
71
  private_constant :PROJECT_PATH_TEMPLATE
72
72
 
73
- SPAN_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
74
- "projects/{project}/traces/{trace}/spans/{span}"
75
- )
76
-
77
- private_constant :SPAN_PATH_TEMPLATE
78
-
79
73
  # Returns a fully-qualified project resource name string.
80
74
  # @param project [String]
81
75
  # @return [String]
@@ -85,19 +79,6 @@ module Google
85
79
  )
86
80
  end
87
81
 
88
- # Returns a fully-qualified span resource name string.
89
- # @param project [String]
90
- # @param trace [String]
91
- # @param span [String]
92
- # @return [String]
93
- def self.span_path project, trace, span
94
- SPAN_PATH_TEMPLATE.render(
95
- :"project" => project,
96
- :"trace" => trace,
97
- :"span" => span
98
- )
99
- end
100
-
101
82
  # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
102
83
  # Provides the means for authenticating requests made by the client. This parameter can
103
84
  # be many types.
@@ -233,7 +214,7 @@ module Google
233
214
  # Required. The name of the project where the spans belong. The format is
234
215
  # `projects/[PROJECT_ID]`.
235
216
  # @param spans [Array<Google::Devtools::Cloudtrace::V2::Span | Hash>]
236
- # A list of new spans. The span names must not match existing
217
+ # Required. A list of new spans. The span names must not match existing
237
218
  # spans, or the results are undefined.
238
219
  # A hash of the same form as `Google::Devtools::Cloudtrace::V2::Span`
239
220
  # can also be provided.
@@ -326,18 +307,18 @@ module Google
326
307
  # A hash of the same form as `Google::Devtools::Cloudtrace::V2::Span::Links`
327
308
  # can also be provided.
328
309
  # @param status [Google::Rpc::Status | Hash]
329
- # An optional final status for this span.
310
+ # Optional. The final status for this span.
330
311
  # A hash of the same form as `Google::Rpc::Status`
331
312
  # can also be provided.
332
313
  # @param same_process_as_parent_span [Google::Protobuf::BoolValue | Hash]
333
- # (Optional) Set this parameter to indicate whether this span is in
314
+ # Optional. Set this parameter to indicate whether this span is in
334
315
  # the same process as its parent. If you do not set this parameter,
335
316
  # Stackdriver Trace is unable to take advantage of this helpful
336
317
  # information.
337
318
  # A hash of the same form as `Google::Protobuf::BoolValue`
338
319
  # can also be provided.
339
320
  # @param child_span_count [Google::Protobuf::Int32Value | Hash]
340
- # An optional number of child spans that were generated while this span
321
+ # Optional. The number of child spans that were generated while this span
341
322
  # was active. If set, allows implementation to detect missing child spans.
342
323
  # A hash of the same form as `Google::Protobuf::Int32Value`
343
324
  # can also be provided.
@@ -353,7 +334,9 @@ module Google
353
334
  # require "google/cloud/trace"
354
335
  #
355
336
  # trace_client = Google::Cloud::Trace.new(version: :v2)
356
- # formatted_name = Google::Cloud::Trace::V2::TraceServiceClient.span_path("[PROJECT]", "[TRACE]", "[SPAN]")
337
+ #
338
+ # # TODO: Initialize `name`:
339
+ # name = ''
357
340
  #
358
341
  # # TODO: Initialize `span_id`:
359
342
  # span_id = ''
@@ -366,7 +349,7 @@ module Google
366
349
  #
367
350
  # # TODO: Initialize `end_time`:
368
351
  # end_time = {}
369
- # response = trace_client.create_span(formatted_name, span_id, display_name, start_time, end_time)
352
+ # response = trace_client.create_span(name, span_id, display_name, start_time, end_time)
370
353
 
371
354
  def create_span \
372
355
  name,
@@ -11,12 +11,12 @@
11
11
  "retry_params": {
12
12
  "default": {
13
13
  "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.2,
15
- "max_retry_delay_millis": 1000,
16
- "initial_rpc_timeout_millis": 30000,
17
- "rpc_timeout_multiplier": 1.5,
18
- "max_rpc_timeout_millis": 60000,
19
- "total_timeout_millis": 120000
14
+ "retry_delay_multiplier": 1.3,
15
+ "max_retry_delay_millis": 60000,
16
+ "initial_rpc_timeout_millis": 20000,
17
+ "rpc_timeout_multiplier": 1.0,
18
+ "max_rpc_timeout_millis": 20000,
19
+ "total_timeout_millis": 600000
20
20
  }
21
21
  },
22
22
  "methods": {
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "CreateSpan": {
29
29
  "timeout_millis": 60000,
30
- "retry_codes_name": "idempotent",
30
+ "retry_codes_name": "non_idempotent",
31
31
  "retry_params_name": "default"
32
32
  }
33
33
  }
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module Trace
19
- VERSION = "0.36.1".freeze
19
+ VERSION = "0.37.0".freeze
20
20
  end
21
21
  end
22
22
  end
@@ -5,6 +5,9 @@
5
5
  require 'google/protobuf'
6
6
 
7
7
  require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/api/resource_pb'
8
11
  require 'google/protobuf/empty_pb'
9
12
  require 'google/protobuf/timestamp_pb'
10
13
  Google::Protobuf::DescriptorPool.generated_pool.build do
@@ -1,7 +1,7 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: google/devtools/cloudtrace/v1/trace.proto for package 'google.devtools.cloudtrace.v1'
3
3
  # Original file comments:
4
- # Copyright 2017 Google Inc.
4
+ # Copyright 2019 Google LLC.
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
@@ -5,6 +5,8 @@
5
5
  require 'google/protobuf'
6
6
 
7
7
  require 'google/api/annotations_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
8
10
  require 'google/protobuf/timestamp_pb'
9
11
  require 'google/protobuf/wrappers_pb'
10
12
  require 'google/rpc/status_pb'
@@ -5,6 +5,9 @@
5
5
  require 'google/protobuf'
6
6
 
7
7
  require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/api/resource_pb'
8
11
  require 'google/devtools/cloudtrace/v2/trace_pb'
9
12
  require 'google/protobuf/empty_pb'
10
13
  require 'google/protobuf/timestamp_pb'
@@ -1,7 +1,7 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: google/devtools/cloudtrace/v2/tracing.proto for package 'google.devtools.cloudtrace.v2'
3
3
  # Original file comments:
4
- # Copyright 2017 Google Inc.
4
+ # Copyright 2019 Google LLC.
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
@@ -15,6 +15,7 @@
15
15
  # See the License for the specific language governing permissions and
16
16
  # limitations under the License.
17
17
  #
18
+ #
18
19
 
19
20
 
20
21
  require 'grpc'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-trace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.36.1
4
+ version: 0.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Azuma
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-11-07 00:00:00.000000000 Z
11
+ date: 2019-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-cloud-core