opentelemetry-instrumentation-sidekiq 0.24.3 → 0.25.0

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: e989981d10264b34c23033edb9b77bf19ec0d03fc5ce6a80c574e826656a391a
4
- data.tar.gz: f18779a5cff1a2a2806df5f2f6e5dc0a989bb8a89de3548ed6ac2fa68ba35dec
3
+ metadata.gz: 4821c5cb6ee46e964a0050c474d971356103b3db4b16475afee181fc54e30e2f
4
+ data.tar.gz: 917279144fe2883f62094ff2e968e5254879d8f07c201c0604a9f0ec82e4cc56
5
5
  SHA512:
6
- metadata.gz: 5cba4f0641550ad45dab7a24bec3901d897cc01800f728b858c5d73b846a1de62927bd82ecdb047b12d65234e4c27cd8a8e32eb86a10ee5dff4c390f053c05e5
7
- data.tar.gz: 21e81746c89967f31eca1814fec4348e1ed07f70f421b6593a529c6d70300caa303415854bac1e5b4dd589f834b6274879aa6e5599a0478d9d18e0f07445db80
6
+ metadata.gz: 89e5de5de2299788004e6ec4917751aa6d6c08092be69892fafe3d0b731a86dd72672e89149a590996288023bbf8dd2a57344313d8303849d3c9f7891dd79258
7
+ data.tar.gz: 6f2a81ac8712100dc5761a79b67021cc4247929f4fe8807d45c1e9b52e2d494e3191373898c2b9ea7bea1983cfe23fc3e4f2bc12a96d1e055743958569d67d95
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release History: opentelemetry-instrumentation-sidekiq
2
2
 
3
+ ### v0.25.0 / 2023-09-07
4
+
5
+ * FIXED: Align messaging instrumentation operation names
6
+
7
+ ### v0.24.4 / 2023-08-07
8
+
9
+ * FIXED: Allow traces inside jobs while avoiding Redis noise
10
+
3
11
  ### v0.24.3 / 2023-08-03
4
12
 
5
13
  * FIXED: Remove inline linter rules
@@ -67,7 +67,7 @@ module OpenTelemetry
67
67
  def add_client_middleware
68
68
  ::Sidekiq.configure_client do |config|
69
69
  config.client_middleware do |chain|
70
- chain.add Middlewares::Client::TracerMiddleware
70
+ chain.prepend Middlewares::Client::TracerMiddleware
71
71
  end
72
72
  end
73
73
  end
@@ -75,16 +75,16 @@ module OpenTelemetry
75
75
  def add_server_middleware
76
76
  ::Sidekiq.configure_server do |config|
77
77
  config.client_middleware do |chain|
78
- chain.add Middlewares::Client::TracerMiddleware
78
+ chain.prepend Middlewares::Client::TracerMiddleware
79
79
  end
80
80
  config.server_middleware do |chain|
81
- chain.add Middlewares::Server::TracerMiddleware
81
+ chain.prepend Middlewares::Server::TracerMiddleware
82
82
  end
83
83
  end
84
84
 
85
85
  if defined?(::Sidekiq::Testing) # rubocop:disable Style/GuardClause
86
86
  ::Sidekiq::Testing.server_middleware do |chain|
87
- chain.add Middlewares::Server::TracerMiddleware
87
+ chain.prepend Middlewares::Server::TracerMiddleware
88
88
  end
89
89
  end
90
90
  end
@@ -12,6 +12,8 @@ module OpenTelemetry
12
12
  # TracerMiddleware propagates context and instruments Sidekiq client
13
13
  # by way of its middleware system
14
14
  class TracerMiddleware
15
+ include ::Sidekiq::ClientMiddleware if defined?(::Sidekiq::ClientMiddleware)
16
+
15
17
  def call(_worker_class, job, _queue, _redis_pool)
16
18
  attributes = {
17
19
  SemanticConventions::Trace::MESSAGING_SYSTEM => 'sidekiq',
@@ -23,8 +25,8 @@ module OpenTelemetry
23
25
  attributes[SemanticConventions::Trace::PEER_SERVICE] = instrumentation_config[:peer_service] if instrumentation_config[:peer_service]
24
26
 
25
27
  span_name = case instrumentation_config[:span_naming]
26
- when :job_class then "#{job['wrapped']&.to_s || job['class']} send"
27
- else "#{job['queue']} send"
28
+ when :job_class then "#{job['wrapped']&.to_s || job['class']} publish"
29
+ else "#{job['queue']} publish"
28
30
  end
29
31
 
30
32
  tracer.in_span(span_name, attributes: attributes, kind: :producer) do |span|
@@ -12,6 +12,8 @@ module OpenTelemetry
12
12
  # TracerMiddleware propagates context and instruments Sidekiq requests
13
13
  # by way of its middleware system
14
14
  class TracerMiddleware
15
+ include ::Sidekiq::ServerMiddleware if defined?(::Sidekiq::ServerMiddleware)
16
+
15
17
  def call(_worker, msg, _queue)
16
18
  attributes = {
17
19
  SemanticConventions::Trace::MESSAGING_SYSTEM => 'sidekiq',
@@ -17,6 +17,14 @@ module OpenTelemetry
17
17
  attributes = {}
18
18
  attributes[SemanticConventions::Trace::PEER_SERVICE] = instrumentation_config[:peer_service] if instrumentation_config[:peer_service]
19
19
  tracer.in_span('Sidekiq::Processor#process_one', attributes: attributes) { super }
20
+ else
21
+ super
22
+ end
23
+ end
24
+
25
+ def fetch
26
+ if instrumentation_config[:trace_processor_process_one]
27
+ super
20
28
  else
21
29
  OpenTelemetry::Common::Utilities.untraced { super }
22
30
  end
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Sidekiq
10
- VERSION = '0.24.3'
10
+ VERSION = '0.25.0'
11
11
  end
12
12
  end
13
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-instrumentation-sidekiq
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.24.3
4
+ version: 0.25.0
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-08-03 00:00:00.000000000 Z
11
+ date: 2023-09-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 2.2.0
75
+ version: '2.5'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 2.2.0
82
+ version: '2.5'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +156,14 @@ dependencies:
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 1.55.1
159
+ version: 1.56.1
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 1.55.1
166
+ version: 1.56.1
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: sidekiq
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -206,20 +206,6 @@ dependencies:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0.9'
209
- - !ruby/object:Gem::Dependency
210
- name: yard-doctest
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - "~>"
214
- - !ruby/object:Gem::Version
215
- version: 0.1.6
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - "~>"
221
- - !ruby/object:Gem::Version
222
- version: 0.1.6
223
209
  description: Sidekiq instrumentation for the OpenTelemetry framework
224
210
  email:
225
211
  - cncf-opentelemetry-contributors@lists.cncf.io
@@ -245,10 +231,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby-contrib
245
231
  licenses:
246
232
  - Apache-2.0
247
233
  metadata:
248
- changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-sidekiq/0.24.3/file/CHANGELOG.md
234
+ changelog_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-sidekiq/0.25.0/file/CHANGELOG.md
249
235
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/sidekiq
250
236
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/issues
251
- documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-sidekiq/0.24.3
237
+ documentation_uri: https://rubydoc.info/gems/opentelemetry-instrumentation-sidekiq/0.25.0
252
238
  post_install_message:
253
239
  rdoc_options: []
254
240
  require_paths: