instana 1.5.2 → 1.6.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
  SHA1:
3
- metadata.gz: 2f4bc2a5ccafd6784e94f221a85e0fba6834fe23
4
- data.tar.gz: f23e89da1122a87d34206ffaaa213aef0833c692
3
+ metadata.gz: 8d5a3d47c55fdc82fdf62db42d36c098cf4e5855
4
+ data.tar.gz: 8630f17d5794a9f5786fd53e817b1efbcee0ba1d
5
5
  SHA512:
6
- metadata.gz: f653bfd0c09c1a1bd878b809b475c668d91c7c7bc759fbd306801d49a1bf18bea66b89747176043c72102e98e439005205170e8d2bfa63ecdf21e2dbbc225f27
7
- data.tar.gz: 497fa0cd4b43d55260eceb7c34bbc66b6e0b8a497283b607a05761cfb1cf9afd0ad67bc849f0bb28ba7ea84aa7263849ce7239f33a3a9a7b07939a081acdc873
6
+ metadata.gz: 4f50211eafb3e77d5a50aa33f81330e5d1d92116e2bb203ad95928ea46a0746ee1a5826052b21d97db1e81199f9686407589f3a0d05c8de58a7e4f021aad572b
7
+ data.tar.gz: 8cd886516b92ab60f13746816da3b928a69de26bd2d4779436f1423b0db0693c652cc8b46c90c8439e87e98b06511a6d6fbe2076ccaf6002db3c9f3d7831b9cd
data/.gitignore CHANGED
@@ -10,3 +10,4 @@
10
10
  /log/
11
11
  .ruby-version
12
12
  gemfiles/*.lock
13
+ /test/tmp/*.pid
data/.travis.yml CHANGED
@@ -24,6 +24,7 @@ script: "bundle exec rake test"
24
24
 
25
25
  services:
26
26
  - memcached
27
+ - redis
27
28
 
28
29
  gemfile:
29
30
  - Gemfile
@@ -42,6 +42,13 @@ gem 'excon'
42
42
  # Memcache
43
43
  gem 'dalli'
44
44
 
45
+ # Background Job queuing and processing
46
+ if RUBY_VERSION < '2.2'
47
+ gem 'sidekiq', '~> 4.2.10'
48
+ else
49
+ gem 'sidekiq', '> 5.0'
50
+ end
51
+
45
52
  # Rack v2 dropped support for Ruby 2.2 and higher.
46
53
  if RUBY_VERSION < '2.2'
47
54
  gem 'rack', '< 2.0'
@@ -40,6 +40,8 @@ module Instana
40
40
  @config[:nethttp] = { :enabled => true }
41
41
  @config[:'rest-client'] = { :enabled => true }
42
42
  @config[:grpc] = { :enabled => true }
43
+ @config[:'sidekiq-client'] = { :enabled => true }
44
+ @config[:'sidekiq-worker'] = { :enabled => true }
43
45
  end
44
46
 
45
47
  def [](key)
@@ -0,0 +1,38 @@
1
+ module Instana
2
+ module Instrumentation
3
+ class SidekiqClient
4
+ def call(worker_class, msg, queue, _redis_pool)
5
+ kv_payload = { :'sidekiq-client' => {} }
6
+ kv_payload[:'sidekiq-client'][:queue] = queue
7
+ kv_payload[:'sidekiq-client'][:job] = worker_class
8
+ kv_payload[:'sidekiq-client'][:retry] = msg['retry']
9
+ ::Instana.tracer.log_entry(:'sidekiq-client', kv_payload)
10
+
11
+ context = ::Instana.tracer.context
12
+ if context
13
+ msg['X-Instana-T'] = context.trace_id_header
14
+ msg['X-Instana-S'] = context.span_id_header
15
+ end
16
+
17
+ result = yield
18
+
19
+ kv_payload[:'sidekiq-client'][:job_id] = result['jid']
20
+ result
21
+ rescue => e
22
+ ::Instana.tracer.log_error(e)
23
+ raise
24
+ ensure
25
+ ::Instana.tracer.log_exit(:'sidekiq-client', kv_payload)
26
+ end
27
+ end
28
+ end
29
+ end
30
+
31
+ if defined?(::Sidekiq) && ::Instana.config[:'sidekiq-client'][:enabled]
32
+ ::Sidekiq.configure_client do |cfg|
33
+ cfg.client_middleware do |chain|
34
+ ::Instana.logger.warn "Instrumenting Sidekiq client"
35
+ chain.add ::Instana::Instrumentation::SidekiqClient
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,43 @@
1
+ module Instana
2
+ module Instrumentation
3
+ class SidekiqWorker
4
+ def call(_worker, msg, _queue)
5
+ kv_payload = { :'sidekiq-worker' => {} }
6
+ kv_payload[:'sidekiq-worker'][:job_id] = msg['jid']
7
+ kv_payload[:'sidekiq-worker'][:queue] = msg['queue']
8
+ kv_payload[:'sidekiq-worker'][:job] = msg['class']
9
+ kv_payload[:'sidekiq-worker'][:retry] = msg['retry']
10
+
11
+ context = {}
12
+ if msg.key?('X-Instana-T')
13
+ trace_id = msg.delete('X-Instana-T')
14
+ span_id = msg.delete('X-Instana-S')
15
+ context[:trace_id] = ::Instana::Util.header_to_id(trace_id)
16
+ context[:span_id] = ::Instana::Util.header_to_id(span_id) if span_id
17
+ end
18
+
19
+ ::Instana.tracer.log_start_or_continue(
20
+ :'sidekiq-worker', kv_payload, context
21
+ )
22
+
23
+ yield
24
+ rescue => e
25
+ kv_payload[:'sidekiq-worker'][:error] = true
26
+ ::Instana.tracer.log_info(kv_payload)
27
+ ::Instana.tracer.log_error(e)
28
+ raise
29
+ ensure
30
+ ::Instana.tracer.log_end(:'sidekiq-worker', {}) if ::Instana.tracer.tracing?
31
+ end
32
+ end
33
+ end
34
+ end
35
+
36
+ if defined?(::Sidekiq) && ::Instana.config[:'sidekiq-worker'][:enabled]
37
+ ::Sidekiq.configure_server do |cfg|
38
+ cfg.server_middleware do |chain|
39
+ ::Instana.logger.warn "Instrumenting Sidekiq worker"
40
+ chain.add ::Instana::Instrumentation::SidekiqWorker
41
+ end
42
+ end
43
+ end
@@ -2,9 +2,9 @@ module Instana
2
2
  class Span
3
3
  REGISTERED_SPANS = [ :actioncontroller, :actionview, :activerecord, :excon,
4
4
  :memcache, :'net-http', :rack, :render, :'rpc-client',
5
- :'rpc-server' ].freeze
6
- ENTRY_SPANS = [ :rack, :'rpc-server' ].freeze
7
- EXIT_SPANS = [ :activerecord, :excon, :'net-http', :'rpc-client' ].freeze
5
+ :'rpc-server', :'sidekiq-client', :'sidekiq-worker' ].freeze
6
+ ENTRY_SPANS = [ :rack, :'rpc-server', :'sidekiq-worker' ].freeze
7
+ EXIT_SPANS = [ :activerecord, :excon, :'net-http', :'rpc-client', :'sidekiq-client' ].freeze
8
8
  HTTP_SPANS = [ :rack, :excon, :'net-http' ].freeze
9
9
 
10
10
  attr_accessor :parent
@@ -1,4 +1,4 @@
1
1
  module Instana
2
- VERSION = "1.5.2"
2
+ VERSION = "1.6.0"
3
3
  VERSION_FULL = "instana-#{VERSION}"
4
4
  end
@@ -76,6 +76,7 @@ class GrpcTest < Minitest::Test
76
76
  PingPongService::PingRequest.new(message: 'Hello World')
77
77
  )
78
78
  end
79
+ sleep 1
79
80
 
80
81
  assert 'Hello World', response.message
81
82
 
@@ -111,6 +112,7 @@ class GrpcTest < Minitest::Test
111
112
  end
112
113
  )
113
114
  end
115
+ sleep 1
114
116
 
115
117
  assert '01234', response.message
116
118
 
@@ -0,0 +1,130 @@
1
+ require 'test_helper'
2
+
3
+ class SidekiqClientTest < Minitest::Test
4
+ def test_config_defaults
5
+ assert ::Instana.config[:'sidekiq-client'].is_a?(Hash)
6
+ assert ::Instana.config[:'sidekiq-client'].key?(:enabled)
7
+ assert_equal true, ::Instana.config[:'sidekiq-client'][:enabled]
8
+ end
9
+
10
+ def test_enqueue
11
+ clear_all!
12
+
13
+ Instana.tracer.start_or_continue_trace(:sidekiqtests) do
14
+ ::Sidekiq::Client.push(
15
+ 'queue' => 'some_random_queue',
16
+ 'class' => ::SidekiqJobOne,
17
+ 'args' => [1, 2, 3],
18
+ 'retry' => false
19
+ )
20
+ end
21
+
22
+ queue = ::Sidekiq::Queue.new('some_random_queue')
23
+ job = queue.first
24
+
25
+ assert_job_enqueued(job)
26
+ assert_normal_trace_recorded(job)
27
+ end
28
+
29
+ def test_enqueue_failure
30
+ clear_all!
31
+
32
+ Instana.tracer.start_or_continue_trace(:sidekiqtests) do
33
+ add_sidekiq_exception_middleware
34
+ begin
35
+ ::Sidekiq::Client.push(
36
+ 'queue' => 'some_random_queue',
37
+ 'class' => ::SidekiqJobTwo,
38
+ 'args' => [1, 2, 3],
39
+ 'retry' => false
40
+ )
41
+ rescue; end
42
+ remove_sidekiq_exception_middleware
43
+ end
44
+
45
+ queue = ::Sidekiq::Queue.new('some_random_queue')
46
+ assert_equal 0, queue.size
47
+
48
+ assert_failure_trace_recorded
49
+ end
50
+
51
+ private
52
+
53
+ def assert_job_enqueued(job)
54
+ job_message = JSON.parse(job.value)
55
+
56
+ assert_equal 'some_random_queue', job_message['queue']
57
+ assert_equal 'SidekiqJobOne', job_message['class']
58
+ assert_equal [1, 2, 3], job_message['args']
59
+ assert_equal false, job_message['retry']
60
+ assert_equal false, job_message['X-Instana-T'].nil?
61
+ assert_equal false, job_message['X-Instana-S'].nil?
62
+ end
63
+
64
+ def assert_normal_trace_recorded(job)
65
+ assert_equal 1, ::Instana.processor.queue_count
66
+ client_trace = Instana.processor.queued_traces.first
67
+
68
+ assert_equal 2, client_trace.spans.count
69
+ spans = client_trace.spans.to_a
70
+ first_span = spans[0]
71
+ second_span = spans[1]
72
+
73
+ assert_equal :sdk, first_span[:n]
74
+ assert_equal :sidekiqtests, first_span[:data][:sdk][:name]
75
+
76
+ assert_equal first_span.id, second_span[:p]
77
+
78
+ assert_equal :'sidekiq-client', second_span[:n]
79
+ assert_equal 'some_random_queue', second_span[:data][:'sidekiq-client'][:queue]
80
+ assert_equal 'SidekiqJobOne', second_span[:data][:'sidekiq-client'][:job]
81
+ assert_equal false, second_span[:data][:'sidekiq-client'][:retry]
82
+ assert_equal job['jid'], second_span[:data][:'sidekiq-client'][:job_id]
83
+ end
84
+
85
+ def assert_failure_trace_recorded
86
+ assert_equal 1, ::Instana.processor.queue_count
87
+ client_trace = Instana.processor.queued_traces.first
88
+
89
+ assert_equal 2, client_trace.spans.count
90
+ spans = client_trace.spans.to_a
91
+ first_span = spans[0]
92
+ second_span = spans[1]
93
+
94
+ assert_equal :sdk, first_span[:n]
95
+ assert_equal :sidekiqtests, first_span[:data][:sdk][:name]
96
+
97
+ assert_equal first_span.id, second_span[:p]
98
+
99
+ assert_equal :'sidekiq-client', second_span[:n]
100
+ assert_equal true, second_span[:error]
101
+ assert_equal false, second_span[:stack].nil?
102
+
103
+ assert_equal 'some_random_queue', second_span[:data][:'sidekiq-client'][:queue]
104
+ assert_equal 'SidekiqJobTwo', second_span[:data][:'sidekiq-client'][:job]
105
+ assert_equal false, second_span[:data][:'sidekiq-client'][:retry]
106
+ assert_equal 'Fail to enqueue job', second_span[:data][:log][:message]
107
+ end
108
+
109
+ SidekiqMiddlewareException = Class.new do
110
+ def call(*_args)
111
+ raise 'Fail to enqueue job'
112
+ end
113
+ end
114
+
115
+ def add_sidekiq_exception_middleware
116
+ Sidekiq.configure_client do |config|
117
+ config.client_middleware do |chain|
118
+ chain.add SidekiqMiddlewareException
119
+ end
120
+ end
121
+ end
122
+
123
+ def remove_sidekiq_exception_middleware
124
+ Sidekiq.configure_client do |config|
125
+ config.client_middleware do |chain|
126
+ chain.remove SidekiqMiddlewareException
127
+ end
128
+ end
129
+ end
130
+ end
@@ -0,0 +1,179 @@
1
+ require 'test_helper'
2
+
3
+ class SidekiqServerTest < Minitest::Test
4
+ def test_config_defaults
5
+ assert ::Instana.config[:'sidekiq-worker'].is_a?(Hash)
6
+ assert ::Instana.config[:'sidekiq-worker'].key?(:enabled)
7
+ assert_equal true, ::Instana.config[:'sidekiq-worker'][:enabled]
8
+ end
9
+
10
+ def test_successful_worker_starts_new_trace
11
+ clear_all!
12
+ $sidekiq_mode = :server
13
+ inject_instrumentation
14
+
15
+ ::Sidekiq.redis_pool.with do |redis|
16
+ redis.sadd('queues'.freeze, 'important')
17
+ redis.lpush(
18
+ 'queue:important',
19
+ <<-JSON
20
+ {
21
+ "class":"SidekiqJobOne",
22
+ "args":[1,2,3],
23
+ "queue":"important",
24
+ "jid":"123456789"
25
+ }
26
+ JSON
27
+ )
28
+ end
29
+ sleep 1
30
+
31
+ assert_equal 1, ::Instana.processor.queue_count
32
+ assert_successful_worker_trace(::Instana.processor.queued_traces.first)
33
+
34
+ $sidekiq_mode = :client
35
+ end
36
+
37
+ def test_failed_worker_starts_new_trace
38
+ clear_all!
39
+ $sidekiq_mode = :server
40
+ inject_instrumentation
41
+
42
+ ::Sidekiq.redis_pool.with do |redis|
43
+ redis.sadd('queues'.freeze, 'important')
44
+ redis.lpush(
45
+ 'queue:important',
46
+ <<-JSON
47
+ {
48
+ "class":"SidekiqJobTwo",
49
+ "args":[1,2,3],
50
+ "queue":"important",
51
+ "jid":"123456789"
52
+ }
53
+ JSON
54
+ )
55
+ end
56
+ sleep 1
57
+ assert_equal 1, ::Instana.processor.queue_count
58
+ assert_failed_worker_trace(::Instana.processor.queued_traces.first)
59
+
60
+ $sidekiq_mode = :client
61
+ end
62
+
63
+ def test_successful_worker_continues_previous_trace
64
+ clear_all!
65
+ $sidekiq_mode = :server
66
+ inject_instrumentation
67
+
68
+ Instana.tracer.start_or_continue_trace(:sidekiqtests) do
69
+ ::Sidekiq::Client.push(
70
+ 'queue' => 'important',
71
+ 'class' => ::SidekiqJobOne,
72
+ 'args' => [1, 2, 3]
73
+ )
74
+ end
75
+ sleep 1
76
+ assert_equal 2, ::Instana.processor.queue_count
77
+ client_trace, worker_trace = differentiate_trace(
78
+ Instana.processor.queued_traces.to_a
79
+ )
80
+ assert_client_trace(client_trace, ::SidekiqJobOne)
81
+ assert_successful_worker_trace(worker_trace)
82
+
83
+ # Worker trace and client trace are in the same trace
84
+ assert_equal client_trace.spans.first['t'], worker_trace.spans.first['t']
85
+
86
+ $sidekiq_mode = :client
87
+ end
88
+
89
+ def test_failed_worker_continues_previous_trace
90
+ clear_all!
91
+ $sidekiq_mode = :server
92
+ inject_instrumentation
93
+
94
+ Instana.tracer.start_or_continue_trace(:sidekiqtests) do
95
+ ::Sidekiq::Client.push(
96
+ 'queue' => 'important',
97
+ 'class' => ::SidekiqJobTwo,
98
+ 'args' => [1, 2, 3]
99
+ )
100
+ end
101
+ sleep 1
102
+ assert_equal 2, ::Instana.processor.queue_count
103
+ client_trace, worker_trace = differentiate_trace(
104
+ Instana.processor.queued_traces.to_a
105
+ )
106
+ assert_client_trace(client_trace, ::SidekiqJobTwo)
107
+ assert_failed_worker_trace(worker_trace)
108
+
109
+ # Worker trace and client trace are in the same trace
110
+ assert_equal client_trace.spans.first['t'], worker_trace.spans.first['t']
111
+
112
+ $sidekiq_mode = :client
113
+ end
114
+
115
+ private
116
+
117
+ def inject_instrumentation
118
+ # Add the instrumentation again to ensure injection in server mode
119
+ ::Sidekiq.configure_server do |cfg|
120
+ cfg.server_middleware do |chain|
121
+ chain.add ::Instana::Instrumentation::SidekiqWorker
122
+ end
123
+ end
124
+ end
125
+
126
+ def differentiate_trace(traces)
127
+ trying_client = traces[0]
128
+ trying_server = traces[1]
129
+
130
+ try_successfully = trying_client.spans.any? do |span|
131
+ span.name == :'sidekiq-client'
132
+ end
133
+
134
+ if try_successfully
135
+ [trying_client, trying_server]
136
+ else
137
+ [trying_server, trying_client]
138
+ end
139
+ end
140
+
141
+ def assert_successful_worker_trace(worker_trace)
142
+ assert_equal 1, worker_trace.spans.count
143
+ span = worker_trace.spans.first
144
+
145
+ assert_equal :'sidekiq-worker', span[:n]
146
+
147
+ assert_equal 'important', span[:data][:'sidekiq-worker'][:queue]
148
+ assert_equal 'SidekiqJobOne', span[:data][:'sidekiq-worker'][:job]
149
+ assert_equal false, span[:data][:'sidekiq-worker'][:job_id].nil?
150
+ end
151
+
152
+ def assert_failed_worker_trace(worker_trace)
153
+ assert_equal 1, worker_trace.spans.count
154
+ span = worker_trace.spans.first
155
+
156
+ assert_equal :'sidekiq-worker', span[:n]
157
+
158
+ assert_equal 'important', span[:data][:'sidekiq-worker'][:queue]
159
+ assert_equal 'SidekiqJobTwo', span[:data][:'sidekiq-worker'][:job]
160
+ assert_equal false, span[:data][:'sidekiq-worker'][:job_id].nil?
161
+
162
+ assert_equal true, span[:data][:'sidekiq-worker'][:error]
163
+ assert_equal 'Fail to execute the job', span[:data][:log][:message]
164
+ end
165
+
166
+ def assert_client_trace(client_trace, job)
167
+ assert_equal 2, client_trace.spans.count
168
+ first_span, second_span = client_trace.spans.to_a
169
+
170
+ assert_equal :sdk, first_span[:n]
171
+ assert_equal :sidekiqtests, first_span[:data][:sdk][:name]
172
+
173
+ assert_equal first_span.id, second_span[:p]
174
+
175
+ assert_equal :'sidekiq-client', second_span[:n]
176
+ assert_equal 'important', second_span[:data][:'sidekiq-client'][:queue]
177
+ assert_equal job.name, second_span[:data][:'sidekiq-client'][:job]
178
+ end
179
+ end
@@ -0,0 +1,6 @@
1
+ class SidekiqJobOne
2
+ include Sidekiq::Worker
3
+
4
+ def perform(a, b, c)
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ class SidekiqJobTwo
2
+ include Sidekiq::Worker
3
+
4
+ def perform(a, b, c)
5
+ raise 'Fail to execute the job'
6
+ end
7
+ end
@@ -0,0 +1,29 @@
1
+ require 'sidekiq/launcher'
2
+ require 'sidekiq/cli'
3
+ require 'sidekiq/api'
4
+ require 'sidekiq/processor'
5
+
6
+ require Dir.pwd + '/test/jobs/sidekiq_job_1.rb'
7
+ require Dir.pwd + '/test/jobs/sidekiq_job_2.rb'
8
+
9
+ ::Instana.logger.info "Booting instrumented sidekiq worker for tests."
10
+ ::Sidekiq.logger.level = ::Logger::FATAL
11
+
12
+ sidekiq_thread = Thread.new do
13
+ launcher = ::Sidekiq::Launcher.new(
14
+ ::Sidekiq.options.merge(
15
+ queues: ['important'],
16
+ concurrency: 2
17
+ )
18
+ )
19
+ launcher.run
20
+ Thread.current[:worker] = launcher
21
+ end
22
+
23
+ Minitest.after_run do
24
+ ::Instana.logger.info "Killing Sidekiq worker"
25
+ sidekiq_thread[:worker].stop
26
+ sleep 2
27
+ end
28
+
29
+ sleep 5
data/test/test_helper.rb CHANGED
@@ -22,7 +22,36 @@ when /rails50|rails42|rails32/
22
22
  ::WebMock.disable_net_connect!(allow_localhost: true)
23
23
  require './test/servers/rails_3205'
24
24
  when /libraries/
25
+ # Configure gRPC
25
26
  require './test/servers/grpc_50051.rb'
27
+
28
+ # Hook into sidekiq to control the current mode
29
+ $sidekiq_mode = :client
30
+ class << Sidekiq
31
+ def server?
32
+ $sidekiq_mode == :server
33
+ end
34
+ end
35
+
36
+ ENV['I_REDIS_URL'] ||= 'redis://127.0.0.1:6379'
37
+
38
+ # Configure redis for sidekiq client
39
+ Sidekiq.configure_client do |config|
40
+ config.redis = { url: ENV['I_REDIS_URL'] }
41
+ end
42
+
43
+ # Configure redis for sidekiq worker
44
+ $sidekiq_mode = :server
45
+ ::Sidekiq.configure_server do |config|
46
+ config.redis = { url: ENV['I_REDIS_URL'] }
47
+ end
48
+ $sidekiq_mode = :client
49
+
50
+ require './test/servers/sidekiq/worker'
51
+ end
52
+
53
+ if defined?(::Redis)
54
+ $redis = Redis.new(url: ENV['I_REDIS_URL'])
26
55
  end
27
56
 
28
57
  Minitest::Reporters.use! MiniTest::Reporters::SpecReporter.new
@@ -33,5 +62,6 @@ Minitest::Reporters.use! MiniTest::Reporters::SpecReporter.new
33
62
  def clear_all!
34
63
  ::Instana.processor.clear!
35
64
  ::Instana.tracer.clear!
65
+ $redis.flushall if $redis
36
66
  nil
37
67
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: instana
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.2
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Giacomo Lombardo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-07-19 00:00:00.000000000 Z
11
+ date: 2017-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -205,6 +205,8 @@ files:
205
205
  - lib/instana/instrumentation/net-http.rb
206
206
  - lib/instana/instrumentation/rack.rb
207
207
  - lib/instana/instrumentation/rest-client.rb
208
+ - lib/instana/instrumentation/sidekiq-client.rb
209
+ - lib/instana/instrumentation/sidekiq-worker.rb
208
210
  - lib/instana/logger.rb
209
211
  - lib/instana/opentracing/carrier.rb
210
212
  - lib/instana/opentracing/tracer.rb
@@ -244,10 +246,15 @@ files:
244
246
  - test/instrumentation/grpc_test.rb
245
247
  - test/instrumentation/net-http_test.rb
246
248
  - test/instrumentation/rest-client_test.rb
249
+ - test/instrumentation/sidekiq-client_test.rb
250
+ - test/instrumentation/sidekiq-worker_test.rb
251
+ - test/jobs/sidekiq_job_1.rb
252
+ - test/jobs/sidekiq_job_2.rb
247
253
  - test/models/block.rb
248
254
  - test/servers/grpc_50051.rb
249
255
  - test/servers/rackapp_6511.rb
250
256
  - test/servers/rails_3205.rb
257
+ - test/servers/sidekiq/worker.rb
251
258
  - test/test_helper.rb
252
259
  - test/tracing/custom_test.rb
253
260
  - test/tracing/id_management_test.rb
@@ -302,10 +309,15 @@ test_files:
302
309
  - test/instrumentation/grpc_test.rb
303
310
  - test/instrumentation/net-http_test.rb
304
311
  - test/instrumentation/rest-client_test.rb
312
+ - test/instrumentation/sidekiq-client_test.rb
313
+ - test/instrumentation/sidekiq-worker_test.rb
314
+ - test/jobs/sidekiq_job_1.rb
315
+ - test/jobs/sidekiq_job_2.rb
305
316
  - test/models/block.rb
306
317
  - test/servers/grpc_50051.rb
307
318
  - test/servers/rackapp_6511.rb
308
319
  - test/servers/rails_3205.rb
320
+ - test/servers/sidekiq/worker.rb
309
321
  - test/test_helper.rb
310
322
  - test/tracing/custom_test.rb
311
323
  - test/tracing/id_management_test.rb