google-cloud-trace 0.33.2 → 0.33.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.yardopts +10 -1
- data/README.md +18 -17
- data/lib/google-cloud-trace.rb +5 -4
- data/lib/google/cloud/trace.rb +5 -188
- data/lib/google/cloud/trace/middleware.rb +4 -3
- data/lib/google/cloud/trace/rails.rb +4 -2
- data/lib/google/cloud/trace/time_sampler.rb +1 -0
- data/lib/google/cloud/trace/v1/credentials.rb +1 -0
- data/lib/google/cloud/trace/v1/doc/google/devtools/cloudtrace/v1/trace.rb +1 -0
- data/lib/google/cloud/trace/v1/doc/google/protobuf/empty.rb +1 -0
- data/lib/google/cloud/trace/v1/doc/google/protobuf/timestamp.rb +9 -6
- data/lib/google/cloud/trace/v1/trace_service_client.rb +2 -0
- data/lib/google/cloud/trace/v2.rb +1 -0
- data/lib/google/cloud/trace/v2/credentials.rb +1 -0
- data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/trace.rb +1 -0
- data/lib/google/cloud/trace/v2/doc/google/devtools/cloudtrace/v2/tracing.rb +1 -0
- data/lib/google/cloud/trace/v2/doc/google/protobuf/any.rb +14 -8
- data/lib/google/cloud/trace/v2/doc/google/protobuf/empty.rb +1 -0
- data/lib/google/cloud/trace/v2/doc/google/protobuf/timestamp.rb +9 -6
- data/lib/google/cloud/trace/v2/doc/google/protobuf/wrappers.rb +1 -0
- data/lib/google/cloud/trace/v2/doc/google/rpc/status.rb +1 -0
- data/lib/google/cloud/trace/v2/trace_service_client.rb +2 -0
- data/lib/google/cloud/trace/version.rb +1 -1
- data/lib/google/devtools/cloudtrace/v1/trace_pb.rb +1 -0
- data/lib/google/devtools/cloudtrace/v1/trace_services_pb.rb +1 -0
- data/lib/google/devtools/cloudtrace/v2/trace_pb.rb +1 -0
- data/lib/google/devtools/cloudtrace/v2/tracing_pb.rb +1 -0
- data/lib/google/devtools/cloudtrace/v2/tracing_services_pb.rb +1 -0
- metadata +6 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4abf38adb01ec9b9997a1d6a0f6e9d3918147157e8e35f178edad7f75c1ea831
|
|
4
|
+
data.tar.gz: ac52a148244c3ff89da4915d84865df83872b9f0880e4928503669339f4a9a3b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e7b1342855a44dd3282c2e6614d0188759cafa2bcfbe8b16a1a3333b8ca336d077111755f6b8b9af4766f5221cb131fb9f6e583a0f4552b3c76e56bd6ddbf13e
|
|
7
|
+
data.tar.gz: 79a50a191e5a7e9c21fa850ab538374bdca1e6acf444f5fdaea48410b92449b104820b945ec0f9692e746877c91431b35bc573a29ab1fe030463a729e28583f6
|
data/.yardopts
CHANGED
|
@@ -3,7 +3,16 @@
|
|
|
3
3
|
--exclude _pb\.rb$
|
|
4
4
|
--markup markdown
|
|
5
5
|
--markup-provider redcarpet
|
|
6
|
+
--main OVERVIEW.md
|
|
6
7
|
|
|
7
8
|
./lib/**/*.rb
|
|
8
9
|
-
|
|
9
|
-
|
|
10
|
+
OVERVIEW.md
|
|
11
|
+
AUTHENTICATION.md
|
|
12
|
+
INSTRUMENTATION.md
|
|
13
|
+
LOGGING.md
|
|
14
|
+
CONTRIBUTING.md
|
|
15
|
+
TROUBLESHOOTING.md
|
|
16
|
+
CHANGELOG.md
|
|
17
|
+
CODE_OF_CONDUCT.md
|
|
18
|
+
LICENSE
|
data/README.md
CHANGED
|
@@ -8,8 +8,8 @@ Stackdriver Trace automatically analyzes all of your application's traces to
|
|
|
8
8
|
generate in-depth latency reports to surface performance degradations, and can
|
|
9
9
|
capture traces from all of your VMs, containers, or Google App Engine projects.
|
|
10
10
|
|
|
11
|
-
- [google-cloud-trace API documentation](http://googlecloudplatform.github.io/google-cloud-ruby
|
|
12
|
-
- [google-cloud-trace instrumentation documentation](https://googlecloudplatform.github.io/google-cloud-ruby
|
|
11
|
+
- [google-cloud-trace API documentation](http://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest)
|
|
12
|
+
- [google-cloud-trace instrumentation documentation](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest/file.INSTRUMENTATION)
|
|
13
13
|
- [google-cloud-trace on RubyGems](https://rubygems.org/gems/google-cloud-trace)
|
|
14
14
|
- [Stackdriver Trace documentation](https://cloud.google.com/trace/docs/)
|
|
15
15
|
|
|
@@ -94,7 +94,7 @@ end
|
|
|
94
94
|
### Configuring the library
|
|
95
95
|
|
|
96
96
|
You can customize the behavior of the Stackdriver Trace library for Ruby. See
|
|
97
|
-
the [configuration guide](../stackdriver/
|
|
97
|
+
the [configuration guide](../stackdriver/CONFIGURATION.md) for a list of
|
|
98
98
|
possible configuration options.
|
|
99
99
|
|
|
100
100
|
## Running on Google Cloud Platform
|
|
@@ -181,11 +181,11 @@ end
|
|
|
181
181
|
|
|
182
182
|
This library also supports the other authentication methods provided by the
|
|
183
183
|
`google-cloud-ruby` suite. Instructions and configuration options are covered
|
|
184
|
-
in the [Authentication Guide](https://googlecloudplatform.github.io/google-cloud-ruby
|
|
184
|
+
in the [Authentication Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest/file.AUTHENTICATION).
|
|
185
185
|
|
|
186
186
|
## Enabling Logging
|
|
187
187
|
|
|
188
|
-
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library. The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below, or a [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby
|
|
188
|
+
To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library. The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below, or a [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-logging/latest/Google/Cloud/Logging/Logger) that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb) and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
|
|
189
189
|
|
|
190
190
|
Configuring a Ruby stdlib logger:
|
|
191
191
|
|
|
@@ -210,9 +210,9 @@ end
|
|
|
210
210
|
This library is supported on Ruby 2.3+.
|
|
211
211
|
|
|
212
212
|
Google provides official support for Ruby versions that are actively supported
|
|
213
|
-
by Ruby Core—that is, Ruby versions that are either in normal maintenance or
|
|
214
|
-
|
|
215
|
-
|
|
213
|
+
by Ruby Core—that is, Ruby versions that are either in normal maintenance or in
|
|
214
|
+
security maintenance, and not end of life. Currently, this means Ruby 2.3 and
|
|
215
|
+
later. Older versions of Ruby _may_ still work, but are unsupported and not
|
|
216
216
|
recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details
|
|
217
217
|
about the Ruby support schedule.
|
|
218
218
|
|
|
@@ -227,23 +227,24 @@ change at any time and the public API should not be considered stable.
|
|
|
227
227
|
|
|
228
228
|
Contributions to this library are always welcome and highly encouraged.
|
|
229
229
|
|
|
230
|
-
See the
|
|
231
|
-
|
|
230
|
+
See the [Contributing
|
|
231
|
+
Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest/file.CONTRIBUTING)
|
|
232
232
|
for more information on how to get started.
|
|
233
233
|
|
|
234
234
|
Please note that this project is released with a Contributor Code of Conduct. By
|
|
235
|
-
participating in this project you agree to abide by its terms. See
|
|
236
|
-
|
|
235
|
+
participating in this project you agree to abide by its terms. See [Code of
|
|
236
|
+
Conduct](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest/file.CODE_OF_CONDUCT)
|
|
237
|
+
for more information.
|
|
237
238
|
|
|
238
239
|
## License
|
|
239
240
|
|
|
240
241
|
This library is licensed under Apache 2.0. Full license text is available in
|
|
241
|
-
|
|
242
|
+
[LICENSE](https://googlecloudplatform.github.io/google-cloud-ruby/docs/google-cloud-trace/latest/file.LICENSE).
|
|
242
243
|
|
|
243
244
|
## Support
|
|
244
245
|
|
|
245
|
-
Please
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
246
|
+
Please [report bugs at the project on
|
|
247
|
+
Github](https://github.com/GoogleCloudPlatform/google-cloud-ruby/issues). Don't
|
|
248
|
+
hesitate to [ask
|
|
249
|
+
questions](http://stackoverflow.com/questions/tagged/google-cloud-platform+ruby)
|
|
249
250
|
about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
data/lib/google-cloud-trace.rb
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
##
|
|
16
17
|
# This file is here to be autorequired by bundler, so that the
|
|
17
18
|
# Google::Cloud.trace and Google::Cloud#trace methods can be available, but the
|
|
@@ -29,8 +30,8 @@ module Google
|
|
|
29
30
|
# Creates a new object for connecting to the Stackdriver Trace service.
|
|
30
31
|
# Each call creates a new connection.
|
|
31
32
|
#
|
|
32
|
-
# For more information on connecting to Google Cloud see the
|
|
33
|
-
# Guide
|
|
33
|
+
# For more information on connecting to Google Cloud see the
|
|
34
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
|
34
35
|
#
|
|
35
36
|
# @param [String, Array<String>] scope The OAuth 2.0 scopes controlling the
|
|
36
37
|
# set of resources and operations that the connection can access. See
|
|
@@ -66,8 +67,8 @@ module Google
|
|
|
66
67
|
# Creates a new object for connecting to the Stackdriver Trace service.
|
|
67
68
|
# Each call creates a new connection.
|
|
68
69
|
#
|
|
69
|
-
# For more information on connecting to Google Cloud see the
|
|
70
|
-
# Guide
|
|
70
|
+
# For more information on connecting to Google Cloud see the
|
|
71
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
|
71
72
|
#
|
|
72
73
|
# @param [String] project_id Project identifier for the Stackdriver Trace
|
|
73
74
|
# service you are connecting to. If not present, the default project for
|
data/lib/google/cloud/trace.rb
CHANGED
|
@@ -34,194 +34,13 @@ require "stackdriver/core"
|
|
|
34
34
|
module Google
|
|
35
35
|
module Cloud
|
|
36
36
|
##
|
|
37
|
-
# # Trace
|
|
37
|
+
# # Stackdriver Trace
|
|
38
38
|
#
|
|
39
39
|
# The Stackdriver Trace service collects and stores latency data from your
|
|
40
40
|
# application and displays it in the Google Cloud Platform Console, giving
|
|
41
41
|
# you detailed near-real-time insight into application performance.
|
|
42
42
|
#
|
|
43
|
-
#
|
|
44
|
-
#
|
|
45
|
-
# * Easy-to-use trace instrumentation that collects and collates latency
|
|
46
|
-
# data for your Ruby application. If you just want latency trace data
|
|
47
|
-
# for your application to appear on the Google Cloud Platform Console,
|
|
48
|
-
# see the section on [instrumenting your app](#instrumenting-your-app).
|
|
49
|
-
# * An idiomatic Ruby API for querying, analyzing, and manipulating trace
|
|
50
|
-
# data in your Ruby application. For an introduction to the Trace API,
|
|
51
|
-
# see the section on the [Trace API](#stackdriver-trace-api).
|
|
52
|
-
#
|
|
53
|
-
# ## Instrumenting Your App
|
|
54
|
-
#
|
|
55
|
-
# This library integrates with Rack-based web frameworks such as Ruby On
|
|
56
|
-
# Rails to provide latency trace reports for your application.
|
|
57
|
-
# Specifcally, it:
|
|
58
|
-
#
|
|
59
|
-
# * Provides a Rack middleware that automatically reports latency traces
|
|
60
|
-
# for http requests handled by your application, and measures the
|
|
61
|
-
# latency of each request as a whole.
|
|
62
|
-
# * Integrates with `ActiveSupport::Notifications` to add important
|
|
63
|
-
# latency-affecting events such as ActiveRecord queries to the trace.
|
|
64
|
-
# * Provides a simple API for your application code to define and
|
|
65
|
-
# measure latency-affecting processes specific to your application.
|
|
66
|
-
#
|
|
67
|
-
# When this library is installed and configured in your running
|
|
68
|
-
# application, you can view your application's latency traces in real time
|
|
69
|
-
# by opening the Google Cloud Console in your web browser and navigating
|
|
70
|
-
# to the "Trace" section. It also integrates with Google App Engine
|
|
71
|
-
# Flexible and Google Container Engine to provide additional information
|
|
72
|
-
# for applications hosted in those environments.
|
|
73
|
-
#
|
|
74
|
-
# Note that not all requests will have traces. By default, the library will
|
|
75
|
-
# sample about one trace every ten seconds per Ruby process, to prevent
|
|
76
|
-
# heavily used applications from reporting too much data. It will also
|
|
77
|
-
# omit certain requests used by Google App Engine for health checking. See
|
|
78
|
-
# {Google::Cloud::Trace::TimeSampler} for more details.
|
|
79
|
-
#
|
|
80
|
-
# ### Using instrumentation with Ruby on Rails
|
|
81
|
-
#
|
|
82
|
-
# To install application instrumentation in your Ruby on Rails app, add
|
|
83
|
-
# this gem, `google-cloud-trace`, to your Gemfile and update your bundle.
|
|
84
|
-
# Then add the following line to your `config/application.rb` file:
|
|
85
|
-
#
|
|
86
|
-
# ```ruby
|
|
87
|
-
# require "google/cloud/trace/rails"
|
|
88
|
-
# ```
|
|
89
|
-
#
|
|
90
|
-
# This will install a Railtie that automatically integrates with the
|
|
91
|
-
# Rails framework, installing the middleware and the ActiveSupport
|
|
92
|
-
# integration for you. Your application traces, including basic request
|
|
93
|
-
# tracing, ActiveRecord query measurements, and view render measurements,
|
|
94
|
-
# should then start appearing in the Cloud Console.
|
|
95
|
-
#
|
|
96
|
-
# See the {Google::Cloud::Trace::Railtie} class for more information,
|
|
97
|
-
# including how to customize your application traces.
|
|
98
|
-
#
|
|
99
|
-
# ### Using instrumentation with Sinatra
|
|
100
|
-
#
|
|
101
|
-
# To install application instrumentation in your Sinatra app, add this gem,
|
|
102
|
-
# `google-cloud-trace`, to your Gemfile and update your bundle. Then add
|
|
103
|
-
# the following lines to your main application Ruby file:
|
|
104
|
-
#
|
|
105
|
-
# ```ruby
|
|
106
|
-
# require "google/cloud/trace"
|
|
107
|
-
# use Google::Cloud::Trace::Middleware
|
|
108
|
-
# ```
|
|
109
|
-
#
|
|
110
|
-
# This will install the trace middleware in your application, providing
|
|
111
|
-
# basic request tracing for your application. You may measure additional
|
|
112
|
-
# processes such as database queries or calls to external services using
|
|
113
|
-
# other classes in this library. See the {Google::Cloud::Trace::Middleware}
|
|
114
|
-
# documentation for more information.
|
|
115
|
-
#
|
|
116
|
-
# ### Using instrumentation with other Rack-based frameworks
|
|
117
|
-
#
|
|
118
|
-
# To install application instrumentation in an app using another Rack-based
|
|
119
|
-
# web framework, add this gem, `google-cloud-trace`, to your Gemfile and
|
|
120
|
-
# update your bundle. Then add install the trace middleware in your
|
|
121
|
-
# middleware stack. In most cases, this means adding these lines to your
|
|
122
|
-
# `config.ru` Rack configuration file:
|
|
123
|
-
#
|
|
124
|
-
# ```ruby
|
|
125
|
-
# require "google/cloud/trace"
|
|
126
|
-
# use Google::Cloud::Trace::Middleware
|
|
127
|
-
# ```
|
|
128
|
-
#
|
|
129
|
-
# Some web frameworks have an alternate mechanism for modifying the
|
|
130
|
-
# middleware stack. Consult your web framework's documentation for more
|
|
131
|
-
# information.
|
|
132
|
-
#
|
|
133
|
-
# ### The Stackdriver diagnostics suite
|
|
134
|
-
#
|
|
135
|
-
# The trace library is part of the Stackdriver diagnostics suite, which
|
|
136
|
-
# also includes error reporting and log analysis. If you include the
|
|
137
|
-
# `stackdriver` gem in your Gemfile, this trace library will be included
|
|
138
|
-
# automatically. In addition, if you include the `stackdriver` gem in an
|
|
139
|
-
# application using Ruby On Rails, the Railtie will be installed
|
|
140
|
-
# automatically; you will not need to write any code to view latency
|
|
141
|
-
# traces for your appl. See the documentation for the "stackdriver" gem
|
|
142
|
-
# for more details.
|
|
143
|
-
#
|
|
144
|
-
# ## Stackdriver Trace API
|
|
145
|
-
#
|
|
146
|
-
# This library also includes an easy to use Ruby client for the
|
|
147
|
-
# Stackdriver Trace API. This API provides calls to report and modify
|
|
148
|
-
# application traces, as well as to query and analyze existing traces.
|
|
149
|
-
#
|
|
150
|
-
# For further information on the trace API, see
|
|
151
|
-
# {Google::Cloud::Trace::Project}.
|
|
152
|
-
#
|
|
153
|
-
# ### Querying traces using the API
|
|
154
|
-
#
|
|
155
|
-
# Using the Stackdriver Trace API, your application can query and analyze
|
|
156
|
-
# its own traces and traces of other projects. Here is an example query
|
|
157
|
-
# for all traces in the past hour.
|
|
158
|
-
#
|
|
159
|
-
# ```ruby
|
|
160
|
-
# require "google/cloud/trace"
|
|
161
|
-
# trace_client = Google::Cloud::Trace.new
|
|
162
|
-
#
|
|
163
|
-
# traces = trace_client.list_traces Time.now - 3600, Time.now
|
|
164
|
-
# traces.each do |trace|
|
|
165
|
-
# puts "Retrieved trace ID: #{trace.trace_id}"
|
|
166
|
-
# end
|
|
167
|
-
# ```
|
|
168
|
-
#
|
|
169
|
-
# Each trace is an object of type {Google::Cloud::Trace::TraceRecord},
|
|
170
|
-
# which provides methods for analyzing tasks that took place during the
|
|
171
|
-
# request trace. See https://cloud.google.com/trace for more information
|
|
172
|
-
# on the kind of data you can capture in a trace.
|
|
173
|
-
#
|
|
174
|
-
# ### Reporting traces using the API
|
|
175
|
-
#
|
|
176
|
-
# Usually it is easiest to use this library's trace instrumentation
|
|
177
|
-
# features to collect and record application trace information. However,
|
|
178
|
-
# you may also use the trace API to update this data. Here is an example:
|
|
179
|
-
#
|
|
180
|
-
# ```ruby
|
|
181
|
-
# require "google/cloud/trace"
|
|
182
|
-
#
|
|
183
|
-
# trace_client = Google::Cloud::Trace.new
|
|
184
|
-
#
|
|
185
|
-
# trace = Google::Cloud::Trace.new
|
|
186
|
-
# trace.in_span "root_span" do
|
|
187
|
-
# # Do stuff...
|
|
188
|
-
# end
|
|
189
|
-
#
|
|
190
|
-
# trace_client.patch_traces trace
|
|
191
|
-
# ```
|
|
192
|
-
#
|
|
193
|
-
# ## Enabling Logging
|
|
194
|
-
#
|
|
195
|
-
# To enable logging for this library, set the logger for the underlying
|
|
196
|
-
# [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library. The
|
|
197
|
-
# logger that you set may be a Ruby stdlib
|
|
198
|
-
# [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html)
|
|
199
|
-
# as shown below, or a
|
|
200
|
-
# [`Google::Cloud::Logging::Logger`](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/google-cloud-logging/latest/google/cloud/logging/logger)
|
|
201
|
-
# that will write logs to [Stackdriver
|
|
202
|
-
# Logging](https://cloud.google.com/logging/). See
|
|
203
|
-
# [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
|
|
204
|
-
# and the gRPC
|
|
205
|
-
# [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb)
|
|
206
|
-
# for additional information.
|
|
207
|
-
#
|
|
208
|
-
# Configuring a Ruby stdlib logger:
|
|
209
|
-
#
|
|
210
|
-
# ```ruby
|
|
211
|
-
# require "logger"
|
|
212
|
-
#
|
|
213
|
-
# module MyLogger
|
|
214
|
-
# LOGGER = Logger.new $stderr, level: Logger::WARN
|
|
215
|
-
# def logger
|
|
216
|
-
# LOGGER
|
|
217
|
-
# end
|
|
218
|
-
# end
|
|
219
|
-
#
|
|
220
|
-
# # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
|
|
221
|
-
# module GRPC
|
|
222
|
-
# extend MyLogger
|
|
223
|
-
# end
|
|
224
|
-
# ```
|
|
43
|
+
# See {file:OVERVIEW.md Stackdriver Trace Overview}.
|
|
225
44
|
#
|
|
226
45
|
module Trace
|
|
227
46
|
THREAD_KEY = :__stackdriver_trace_span__
|
|
@@ -231,8 +50,7 @@ module Google
|
|
|
231
50
|
# Each call creates a new connection.
|
|
232
51
|
#
|
|
233
52
|
# For more information on connecting to Google Cloud see the
|
|
234
|
-
#
|
|
235
|
-
# Guide](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/guides/authentication).
|
|
53
|
+
# {file:AUTHENTICATION.md Authentication Guide}.
|
|
236
54
|
#
|
|
237
55
|
# @param [String] project_id Project identifier for the Stackdriver Trace
|
|
238
56
|
# service you are connecting to. If not present, the default project for
|
|
@@ -321,9 +139,8 @@ module Google
|
|
|
321
139
|
# Default:
|
|
322
140
|
# `Google::Cloud::Trace::Notifications::DEFAULT_MAX_DATA_LENGTH`
|
|
323
141
|
#
|
|
324
|
-
# See the
|
|
325
|
-
#
|
|
326
|
-
# for full configuration parameters.
|
|
142
|
+
# See the {file:INSTRUMENTATION.md Configuration Guide} for full
|
|
143
|
+
# configuration parameters.
|
|
327
144
|
#
|
|
328
145
|
# @return [Google::Cloud::Config] The configuration object
|
|
329
146
|
# the Google::Cloud::Trace module uses.
|
|
@@ -115,9 +115,10 @@ module Google
|
|
|
115
115
|
# @param [Rack Application] app Rack application
|
|
116
116
|
# @param [Google::Cloud::Trace::Service, AsyncReporter] service
|
|
117
117
|
# The service object to update traces. Optional if running on GCE.
|
|
118
|
-
# @param [Hash]
|
|
119
|
-
#
|
|
120
|
-
# Guide
|
|
118
|
+
# @param [Hash] kwargs Hash of configuration settings. Used for backward
|
|
119
|
+
# API compatibility. See the {file:INSTRUMENTATION.md Instrumentation
|
|
120
|
+
# Guide} and [Configuration
|
|
121
|
+
# Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/stackdriver/latest/file.INSTRUMENTATION_CONFIGURATION)
|
|
121
122
|
# for the prefered way to set configuration parameters.
|
|
122
123
|
#
|
|
123
124
|
def initialize app, service: nil, **kwargs
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
require "google/cloud/env"
|
|
16
17
|
require "google/cloud/trace"
|
|
17
18
|
|
|
@@ -43,8 +44,9 @@ module Google
|
|
|
43
44
|
#
|
|
44
45
|
# ## Configuration
|
|
45
46
|
#
|
|
46
|
-
# See the
|
|
47
|
-
#
|
|
47
|
+
# See the {file:INSTRUMENTATION.md Instrumentation Guide} and
|
|
48
|
+
# [Configuration
|
|
49
|
+
# Guide](https://googlecloudplatform.github.io/google-cloud-ruby/docs/stackdriver/latest/file.INSTRUMENTATION_CONFIGURATION)
|
|
48
50
|
# on how to configure the Railtie and Middleware.
|
|
49
51
|
#
|
|
50
52
|
# ## Measuring custom functionality
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
module Google
|
|
16
17
|
module Protobuf
|
|
17
18
|
# A Timestamp represents a point in time independent of any time zone
|
|
@@ -72,12 +73,14 @@ module Google
|
|
|
72
73
|
#
|
|
73
74
|
# In JSON format, the Timestamp type is encoded as a string in the
|
|
74
75
|
# [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the
|
|
75
|
-
# format is "{year}
|
|
76
|
-
# where {year} is always expressed using four digits while {month}, {day},
|
|
77
|
-
# {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
|
|
76
|
+
# format is "\\{year}-\\{month}-\\{day}T\\{hour}:\\{min}:\\{sec}[.\\{frac_sec}]Z"
|
|
77
|
+
# where \\{year} is always expressed using four digits while \\{month}, \\{day},
|
|
78
|
+
# \\{hour}, \\{min}, and \\{sec} are zero-padded to two digits each. The fractional
|
|
78
79
|
# seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
|
|
79
80
|
# are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
|
|
80
|
-
# is required
|
|
81
|
+
# is required. A proto3 JSON serializer should always use UTC (as indicated by
|
|
82
|
+
# "Z") when printing the Timestamp type and a proto3 JSON parser should be
|
|
83
|
+
# able to accept both UTC and other timezones (as indicated by an offset).
|
|
81
84
|
#
|
|
82
85
|
# For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
|
|
83
86
|
# 01:30 UTC on January 15, 2017.
|
|
@@ -88,8 +91,8 @@ module Google
|
|
|
88
91
|
# to this format using [+strftime+](https://docs.python.org/2/library/time.html#time.strftime)
|
|
89
92
|
# with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one
|
|
90
93
|
# can use the Joda Time's [+ISODateTimeFormat.dateTime()+](
|
|
91
|
-
# http://joda-time
|
|
92
|
-
# to obtain a formatter capable of generating timestamps in this format.
|
|
94
|
+
# http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime--
|
|
95
|
+
# ) to obtain a formatter capable of generating timestamps in this format.
|
|
93
96
|
# @!attribute [rw] seconds
|
|
94
97
|
# @return [Integer]
|
|
95
98
|
# Represents seconds of UTC time since Unix epoch
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
# For the short term, the refresh process will only be runnable by Google
|
|
20
20
|
# engineers.
|
|
21
21
|
|
|
22
|
+
|
|
22
23
|
require "json"
|
|
23
24
|
require "pathname"
|
|
24
25
|
|
|
@@ -40,6 +41,7 @@ module Google
|
|
|
40
41
|
# @!attribute [r] trace_service_stub
|
|
41
42
|
# @return [Google::Devtools::Cloudtrace::V1::TraceService::Stub]
|
|
42
43
|
class TraceServiceClient
|
|
44
|
+
# @private
|
|
43
45
|
attr_reader :trace_service_stub
|
|
44
46
|
|
|
45
47
|
# The default address of the service.
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
module Google
|
|
16
17
|
module Protobuf
|
|
17
18
|
# +Any+ contains an arbitrary serialized protocol buffer message along with a
|
|
@@ -95,17 +96,18 @@ module Google
|
|
|
95
96
|
# }
|
|
96
97
|
# @!attribute [rw] type_url
|
|
97
98
|
# @return [String]
|
|
98
|
-
# A URL/resource name
|
|
99
|
-
#
|
|
99
|
+
# A URL/resource name that uniquely identifies the type of the serialized
|
|
100
|
+
# protocol buffer message. The last segment of the URL's path must represent
|
|
101
|
+
# the fully qualified name of the type (as in
|
|
102
|
+
# +path/google.protobuf.Duration+). The name should be in a canonical form
|
|
103
|
+
# (e.g., leading "." is not accepted).
|
|
100
104
|
#
|
|
101
|
-
#
|
|
102
|
-
#
|
|
105
|
+
# In practice, teams usually precompile into the binary all types that they
|
|
106
|
+
# expect it to use in the context of Any. However, for URLs which use the
|
|
107
|
+
# scheme +http+, +https+, or no scheme, one can optionally set up a type
|
|
108
|
+
# server that maps type URLs to message definitions as follows:
|
|
103
109
|
#
|
|
104
110
|
# * If no scheme is provided, +https+ is assumed.
|
|
105
|
-
# * The last segment of the URL's path must represent the fully
|
|
106
|
-
# qualified name of the type (as in +path/google.protobuf.Duration+).
|
|
107
|
-
# The name should be in a canonical form (e.g., leading "." is
|
|
108
|
-
# not accepted).
|
|
109
111
|
# * An HTTP GET on the URL must yield a {Google::Protobuf::Type}
|
|
110
112
|
# value in binary format, or produce an error.
|
|
111
113
|
# * Applications are allowed to cache lookup results based on the
|
|
@@ -114,6 +116,10 @@ module Google
|
|
|
114
116
|
# on changes to types. (Use versioned type names to manage
|
|
115
117
|
# breaking changes.)
|
|
116
118
|
#
|
|
119
|
+
# Note: this functionality is not currently available in the official
|
|
120
|
+
# protobuf release, and it is not used for type URLs beginning with
|
|
121
|
+
# type.googleapis.com.
|
|
122
|
+
#
|
|
117
123
|
# Schemes other than +http+, +https+ (or the empty scheme) might be
|
|
118
124
|
# used with implementation specific semantics.
|
|
119
125
|
# @!attribute [rw] value
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
module Google
|
|
16
17
|
module Protobuf
|
|
17
18
|
# A Timestamp represents a point in time independent of any time zone
|
|
@@ -72,12 +73,14 @@ module Google
|
|
|
72
73
|
#
|
|
73
74
|
# In JSON format, the Timestamp type is encoded as a string in the
|
|
74
75
|
# [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the
|
|
75
|
-
# format is "{year}
|
|
76
|
-
# where {year} is always expressed using four digits while {month}, {day},
|
|
77
|
-
# {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
|
|
76
|
+
# format is "\\{year}-\\{month}-\\{day}T\\{hour}:\\{min}:\\{sec}[.\\{frac_sec}]Z"
|
|
77
|
+
# where \\{year} is always expressed using four digits while \\{month}, \\{day},
|
|
78
|
+
# \\{hour}, \\{min}, and \\{sec} are zero-padded to two digits each. The fractional
|
|
78
79
|
# seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
|
|
79
80
|
# are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
|
|
80
|
-
# is required
|
|
81
|
+
# is required. A proto3 JSON serializer should always use UTC (as indicated by
|
|
82
|
+
# "Z") when printing the Timestamp type and a proto3 JSON parser should be
|
|
83
|
+
# able to accept both UTC and other timezones (as indicated by an offset).
|
|
81
84
|
#
|
|
82
85
|
# For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
|
|
83
86
|
# 01:30 UTC on January 15, 2017.
|
|
@@ -88,8 +91,8 @@ module Google
|
|
|
88
91
|
# to this format using [+strftime+](https://docs.python.org/2/library/time.html#time.strftime)
|
|
89
92
|
# with the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one
|
|
90
93
|
# can use the Joda Time's [+ISODateTimeFormat.dateTime()+](
|
|
91
|
-
# http://joda-time
|
|
92
|
-
# to obtain a formatter capable of generating timestamps in this format.
|
|
94
|
+
# http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime--
|
|
95
|
+
# ) to obtain a formatter capable of generating timestamps in this format.
|
|
93
96
|
# @!attribute [rw] seconds
|
|
94
97
|
# @return [Integer]
|
|
95
98
|
# Represents seconds of UTC time since Unix epoch
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
# For the short term, the refresh process will only be runnable by Google
|
|
20
20
|
# engineers.
|
|
21
21
|
|
|
22
|
+
|
|
22
23
|
require "json"
|
|
23
24
|
require "pathname"
|
|
24
25
|
|
|
@@ -40,6 +41,7 @@ module Google
|
|
|
40
41
|
# @!attribute [r] trace_service_stub
|
|
41
42
|
# @return [Google::Devtools::Cloudtrace::V2::TraceService::Stub]
|
|
42
43
|
class TraceServiceClient
|
|
44
|
+
# @private
|
|
43
45
|
attr_reader :trace_service_stub
|
|
44
46
|
|
|
45
47
|
# The default address of the service.
|
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.33.
|
|
4
|
+
version: 0.33.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Daniel Azuma
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-
|
|
11
|
+
date: 2018-09-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: google-cloud-core
|
|
@@ -210,16 +210,16 @@ dependencies:
|
|
|
210
210
|
name: yard-doctest
|
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
|
212
212
|
requirements:
|
|
213
|
-
- - "
|
|
213
|
+
- - ">="
|
|
214
214
|
- !ruby/object:Gem::Version
|
|
215
|
-
version: 0
|
|
215
|
+
version: '0'
|
|
216
216
|
type: :development
|
|
217
217
|
prerelease: false
|
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
|
219
219
|
requirements:
|
|
220
|
-
- - "
|
|
220
|
+
- - ">="
|
|
221
221
|
- !ruby/object:Gem::Version
|
|
222
|
-
version: 0
|
|
222
|
+
version: '0'
|
|
223
223
|
- !ruby/object:Gem::Dependency
|
|
224
224
|
name: activerecord
|
|
225
225
|
requirement: !ruby/object:Gem::Requirement
|