opentelemetry-instrumentation-resque 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bf90ba504c51858ede701a5517139e757090db7d7b5cad74e705af71c6d749b9
|
4
|
+
data.tar.gz: d1c6c0d56daa9c3d5f7460b9272a0a81a6cf87e7e2a48ac67f1f5b93a35e4b11
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e54453118a9035506cbe4024057bcd04cc3d96e6b73df9fb555efaa5cd3a39d8f72287d3ab26bcc60dd9cda092bcbccb72a309edbb220a4b9a64bab429e55320
|
7
|
+
data.tar.gz: 36ba410d67292c72f743f4cc87527d8339f4f046cd55aea42601cb5bd4836351424b67ee72e73a92290297f5918687c241903cf377566231c399f5876d10fdbd
|
data/CHANGELOG.md
CHANGED
@@ -7,7 +7,61 @@
|
|
7
7
|
module OpenTelemetry
|
8
8
|
module Instrumentation
|
9
9
|
module Resque
|
10
|
-
# The Instrumentation class contains logic to detect and install the Resque instrumentation
|
10
|
+
# The {OpenTelemetry::Instrumentation::Resque::Instrumentation} class contains logic to detect and install the Resque instrumentation
|
11
|
+
#
|
12
|
+
# Installation and configuration of this instrumentation is done within the
|
13
|
+
# {https://www.rubydoc.info/gems/opentelemetry-sdk/OpenTelemetry/SDK#configure-instance_method OpenTelemetry::SDK#configure}
|
14
|
+
# block, calling {https://www.rubydoc.info/gems/opentelemetry-sdk/OpenTelemetry%2FSDK%2FConfigurator:use use()}
|
15
|
+
# or {https://www.rubydoc.info/gems/opentelemetry-sdk/OpenTelemetry%2FSDK%2FConfigurator:use_all use_all()}.
|
16
|
+
#
|
17
|
+
# ## Configuration keys and options
|
18
|
+
#
|
19
|
+
# ### `:span_naming`
|
20
|
+
#
|
21
|
+
# Specifies how the span names are set. Can be one of:
|
22
|
+
#
|
23
|
+
# - `:queue` **(default)** - The job span name will appear as '<destination / queue name> <operation>',
|
24
|
+
# for example `default process`.
|
25
|
+
# - `:job_class` - The job span name will appear as '<job class name> <operation>',
|
26
|
+
# for example `SimpleJob process`.
|
27
|
+
#
|
28
|
+
# ### `:propagation_style`
|
29
|
+
#
|
30
|
+
# Specifies how the job's execution is traced and related to the trace where the job was enqueued.
|
31
|
+
#
|
32
|
+
# - `:link` **(default)** - The job will be represented by a separate trace from the span that enqueued the job.
|
33
|
+
# - The initial span of the job trace will be associated with the span that enqueued the job, via a
|
34
|
+
# {https://opentelemetry.io/docs/concepts/signals/traces/#span-links Span Link}.
|
35
|
+
# - `:child` - The job will be represented within the same logical trace, as a direct
|
36
|
+
# child of the span that enqueued the job.
|
37
|
+
# - `:none` - The job will be represented by a separate trace from the span that enqueued the job.
|
38
|
+
# There will be no explicit relationship between the job trace and the trace containing the span that
|
39
|
+
# enqueued the job.
|
40
|
+
#
|
41
|
+
# ### `:force_flush`
|
42
|
+
#
|
43
|
+
# Specifies whether spans are forcibly flushed (exported out of process) upon every job completion.
|
44
|
+
#
|
45
|
+
# - `:ask_the_job` **(default)** - Synchronously flush completed spans when a job completes if workers are
|
46
|
+
# forked for each job.
|
47
|
+
# - Determined by checking if {https://www.rubydoc.info/gems/resque/Resque%2FWorker:fork_per_job%3F Resque::Worker#fork_per_job?}
|
48
|
+
# is true. Spans must be flushed and exported before a worker process terminates or no telemetry will be sent.
|
49
|
+
# - `:always` - All completed spans will be synchronously flushed at the end of a job's execution.
|
50
|
+
# - `:never` - Job completion will not affect the export of spans out of worker processes.
|
51
|
+
# - Selecting this option will result in spans being lost if the worker process ends before
|
52
|
+
# the spans are flushed. You might select this option if you wish to coordinate the timing for flushing
|
53
|
+
# completed spans yourself.
|
54
|
+
#
|
55
|
+
# @example An explicit default configuration
|
56
|
+
# OpenTelemetry::SDK.configure do |c|
|
57
|
+
# c.use_all({
|
58
|
+
# 'OpenTelemetry::Instrumentation::Resque' => {
|
59
|
+
# span_naming: :queue,
|
60
|
+
# propagation_style: :link
|
61
|
+
# force_flush: :ask_the_job,
|
62
|
+
# },
|
63
|
+
# })
|
64
|
+
# end
|
11
65
|
class Instrumentation < OpenTelemetry::Instrumentation::Base
|
12
66
|
install do |_config|
|
13
67
|
require_dependencies
|
@@ -18,30 +72,6 @@ module OpenTelemetry
|
|
18
72
|
defined?(::Resque)
|
19
73
|
end
|
20
74
|
|
21
|
-
## Supported configuration keys for the install config hash:
|
22
|
-
#
|
23
|
-
# force_flush: controls if spans are forcibly flushed upon job completion
|
24
|
-
# - :ask_the_job (default) - if `Resque::Worker#fork_per_job?` is set,
|
25
|
-
# all completed spans will be synchronously flushed at the end of a
|
26
|
-
# job's execution
|
27
|
-
# - :always - all completed spans will be synchronously flushed at the
|
28
|
-
# end of a job's execution
|
29
|
-
# - :never - the job will not intervene with the processing of spans
|
30
|
-
#
|
31
|
-
# span_naming: when `:job_class`, the span names will be set to
|
32
|
-
# '<job class name> <operation>'. When `:queue`, the span names
|
33
|
-
# will be set to '<destination / queue name> <operation>'
|
34
|
-
#
|
35
|
-
# propagation_style: controls how the job's execution is traced and related
|
36
|
-
# to the trace where the job was enqueued. Can be one of:
|
37
|
-
# - :link (default) - the job will be executed in a separate trace. The
|
38
|
-
# initial span of the execution trace will be linked to the span that
|
39
|
-
# enqueued the job, via a Span Link.
|
40
|
-
# - :child - the job will be executed in the same logical trace, as a direct
|
41
|
-
# child of the span that enqueued the job.
|
42
|
-
# - :none - the job's execution will not be explicitly linked to the span that
|
43
|
-
# enqueued the job.
|
44
|
-
|
45
75
|
option :force_flush, default: :ask_the_job, validate: %I[ask_the_job always never]
|
46
76
|
option :span_naming, default: :queue, validate: %I[job_class queue]
|
47
77
|
option :propagation_style, default: :link, validate: %i[link child none]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentelemetry-instrumentation-resque
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- OpenTelemetry Authors
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-02-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: opentelemetry-api
|
@@ -142,14 +142,28 @@ dependencies:
|
|
142
142
|
requirements:
|
143
143
|
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 1.
|
145
|
+
version: 1.60.1
|
146
146
|
type: :development
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 1.
|
152
|
+
version: 1.60.1
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: rubocop-performance
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '1.20'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '1.20'
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: simplecov
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,14 +184,14 @@ dependencies:
|
|
170
184
|
requirements:
|
171
185
|
- - "~>"
|
172
186
|
- !ruby/object:Gem::Version
|
173
|
-
version: 3.
|
187
|
+
version: '3.19'
|
174
188
|
type: :development
|
175
189
|
prerelease: false
|
176
190
|
version_requirements: !ruby/object:Gem::Requirement
|
177
191
|
requirements:
|
178
192
|
- - "~>"
|
179
193
|
- !ruby/object:Gem::Version
|
180
|
-
version: 3.
|
194
|
+
version: '3.19'
|
181
195
|
- !ruby/object:Gem::Dependency
|
182
196
|
name: yard
|
183
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -214,10 +228,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby-contrib
|
|
214
228
|
licenses:
|
215
229
|
- Apache-2.0
|
216
230
|
metadata:
|
217
|
-
changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-resque/0.5.
|
231
|
+
changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-resque/0.5.1/file/CHANGELOG.md
|
218
232
|
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/resque
|
219
233
|
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/issues
|
220
|
-
documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-resque/0.5.
|
234
|
+
documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-resque/0.5.1
|
221
235
|
post_install_message:
|
222
236
|
rdoc_options: []
|
223
237
|
require_paths:
|