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: 7e6fb49eb3be763274583ec56559628984788f0ad375e9ea8e918e69e067ca69
4
- data.tar.gz: dcf359e2db4a9f41db8d16143bc547c3fd7ff8269255d8d7648d74d1a22e7427
3
+ metadata.gz: bf90ba504c51858ede701a5517139e757090db7d7b5cad74e705af71c6d749b9
4
+ data.tar.gz: d1c6c0d56daa9c3d5f7460b9272a0a81a6cf87e7e2a48ac67f1f5b93a35e4b11
5
5
  SHA512:
6
- metadata.gz: 3d8c6e47e905da28d8a3dd72a4e24809b6a56e4179dda1576ab92c31dc04b6cda3d3c568def04215a2d35e372275e9a0ddb4ca6eb858439bb8c9d6fac5e20284
7
- data.tar.gz: a8a38299b1c33465e41683914eae9814ca68e26c34437ca411b894f4d270ff3d5f7db05f642cc81fddf1a4f68d59a98877401101f855440dddc00e32639468bc
6
+ metadata.gz: e54453118a9035506cbe4024057bcd04cc3d96e6b73df9fb555efaa5cd3a39d8f72287d3ab26bcc60dd9cda092bcbccb72a309edbb220a4b9a64bab429e55320
7
+ data.tar.gz: 36ba410d67292c72f743f4cc87527d8339f4f046cd55aea42601cb5bd4836351424b67ee72e73a92290297f5918687c241903cf377566231c399f5876d10fdbd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release History: opentelemetry-instrumentation-resque
2
2
 
3
+ ### v0.5.1 / 2024-02-08
4
+
5
+ * DOCS: Relocate Resque config option comments to render in Yard docs
6
+
3
7
  ### v0.5.0 / 2023-09-07
4
8
 
5
9
  * FIXED: Align messaging instrumentation operation names
@@ -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]
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Resque
10
- VERSION = '0.5.0'
10
+ VERSION = '0.5.1'
11
11
  end
12
12
  end
13
13
  end
@@ -9,7 +9,7 @@ require 'opentelemetry-instrumentation-base'
9
9
 
10
10
  module OpenTelemetry
11
11
  module Instrumentation
12
- # Contains the OpenTelemetry instrumentation for the Resque gem
12
+ # (see OpenTelemetry::Instrumentation::Resque::Instrumentation)
13
13
  module Resque
14
14
  end
15
15
  end
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.0
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: 2023-09-07 00:00:00.000000000 Z
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.56.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.56.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.7.6
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.7.6
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.0/file/CHANGELOG.md
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.0
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: