opentelemetry-instrumentation-sidekiq 0.24.3 → 0.25.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: 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: