instana 1.211.0 → 1.212.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +36 -5
  3. data/Gemfile +1 -1
  4. data/README.md +3 -7
  5. data/Rakefile +21 -2
  6. data/download.sh +85 -0
  7. data/gemfiles/aws_30.gemfile +1 -1
  8. data/gemfiles/aws_60.gemfile +1 -1
  9. data/gemfiles/coverage_merge.gemfile +9 -0
  10. data/gemfiles/cuba_30.gemfile +1 -1
  11. data/gemfiles/cuba_40.gemfile +1 -1
  12. data/gemfiles/dalli_20.gemfile +1 -1
  13. data/gemfiles/dalli_30.gemfile +1 -1
  14. data/gemfiles/dalli_32.gemfile +1 -1
  15. data/gemfiles/excon_02.gemfile +1 -1
  16. data/gemfiles/excon_021.gemfile +1 -1
  17. data/gemfiles/excon_079.gemfile +1 -1
  18. data/gemfiles/excon_100.gemfile +1 -1
  19. data/gemfiles/graphql_10.gemfile +1 -1
  20. data/gemfiles/graphql_20.gemfile +1 -1
  21. data/gemfiles/grpc_10.gemfile +1 -1
  22. data/gemfiles/mongo_216.gemfile +1 -1
  23. data/gemfiles/mongo_219.gemfile +1 -1
  24. data/gemfiles/net_http_01.gemfile +1 -1
  25. data/gemfiles/rack_16.gemfile +1 -1
  26. data/gemfiles/rack_20.gemfile +1 -1
  27. data/gemfiles/rack_30.gemfile +1 -1
  28. data/gemfiles/rails_42.gemfile +1 -1
  29. data/gemfiles/rails_50.gemfile +1 -1
  30. data/gemfiles/rails_52.gemfile +1 -1
  31. data/gemfiles/rails_60.gemfile +1 -1
  32. data/gemfiles/rails_61.gemfile +1 -1
  33. data/gemfiles/rails_70.gemfile +2 -2
  34. data/gemfiles/rails_71.gemfile +19 -0
  35. data/gemfiles/redis_40.gemfile +1 -1
  36. data/gemfiles/resque_122.gemfile +1 -1
  37. data/gemfiles/resque_20.gemfile +1 -1
  38. data/gemfiles/rest_client_16.gemfile +1 -1
  39. data/gemfiles/rest_client_20.gemfile +1 -1
  40. data/gemfiles/roda_20.gemfile +1 -1
  41. data/gemfiles/roda_30.gemfile +1 -1
  42. data/gemfiles/shoryuken_50.gemfile +1 -1
  43. data/gemfiles/shoryuken_60.gemfile +1 -1
  44. data/gemfiles/sidekiq_42.gemfile +1 -1
  45. data/gemfiles/sidekiq_50.gemfile +2 -2
  46. data/gemfiles/sidekiq_60.gemfile +2 -2
  47. data/gemfiles/sidekiq_65.gemfile +15 -0
  48. data/gemfiles/sidekiq_70.gemfile +2 -2
  49. data/gemfiles/sinatra_14.gemfile +1 -1
  50. data/gemfiles/sinatra_22.gemfile +1 -1
  51. data/gemfiles/sinatra_30.gemfile +1 -1
  52. data/lib/instana/activators/sidekiq_client.rb +1 -2
  53. data/lib/instana/activators/sidekiq_worker.rb +1 -2
  54. data/lib/instana/instrumentation/sidekiq-client.rb +11 -2
  55. data/lib/instana/instrumentation/sidekiq-worker.rb +11 -2
  56. data/lib/instana/version.rb +1 -1
  57. data/test/backend/host_agent_reporting_observer_test.rb +5 -3
  58. data/test/instrumentation/rails_action_controller_test.rb +5 -1
  59. data/test/instrumentation/rails_action_view_test.rb +5 -1
  60. data/test/instrumentation/rails_active_record_database_missing_test.rb +5 -3
  61. data/test/instrumentation/sidekiq-client_test.rb +2 -18
  62. data/test/instrumentation/sidekiq-worker_test.rb +3 -45
  63. data/test/support/apps/sidekiq/worker.rb +8 -8
  64. data/test/test_helper.rb +2 -1
  65. metadata +6 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8d5a6d5f952c612a4409a7706048b48a09d315556598c9473485c6c558ba0239
4
- data.tar.gz: 232ab891cd7f9096691c27bbcd290bcaf98d84c91cf433fa7d623d0824d5e572
3
+ metadata.gz: 332da83974279a02e0ebc35086a412aa2f8640d4e40dd38957bec22c0f8a9ed8
4
+ data.tar.gz: cb3528e5f55e0c76e5069c0d801033d800af6c184101484690d9ead1b9cf7088
5
5
  SHA512:
6
- metadata.gz: 54d13de299896779dc38c2e5d0e4dc07ba4aa9dfc49c3390cd5404bc074764c785c2c6c27c5738f2c32b8eead65127cc0c508c896ea2e6c9780e357f838ae274
7
- data.tar.gz: e6b4c5f3dc57e0b8fb8cd39a473f17a37c1a403bd5fe745de11675001e0edff8e7410ee434f40a30ac38dbf764da7d028fb6459caf887ade9f332f5edb8ac73b
6
+ metadata.gz: 4f372d7417bda356f6051fc6d8fb1ceb6f85537ac4c6841a9247f966350c9574335bf8c4fdc567b1c78d54ad95a8f3d0ce53b14126e964bb249c68d648616d11
7
+ data.tar.gz: 44ebe7c9b5716b7d323a619561c3732ba8b1145a600601ebbb6c797444db89a82486f94580ac2b20335f3f4877abaf35274abe9a14b740500c894c2b3aecffab
data/.circleci/config.yml CHANGED
@@ -29,6 +29,7 @@ library_gemfile: &library_gemfile
29
29
  - "./gemfiles/sidekiq_42.gemfile"
30
30
  - "./gemfiles/sidekiq_50.gemfile"
31
31
  - "./gemfiles/sidekiq_60.gemfile"
32
+ - "./gemfiles/sidekiq_65.gemfile"
32
33
  - "./gemfiles/sidekiq_70.gemfile"
33
34
  - "./gemfiles/sinatra_14.gemfile"
34
35
  - "./gemfiles/sinatra_22.gemfile"
@@ -211,33 +212,55 @@ commands:
211
212
  bundler --version
212
213
  bundle config set path './vendor/bundle'
213
214
  - run:
214
- name: Install Depdendecies
215
+ name: Install Dependencies
215
216
  command: |
216
217
  bundle check || bundle install
217
218
  run_sonarqube:
218
219
  steps:
219
220
  - run:
220
- name: Install Java
221
+ name: Install Java for the SonarQube tool
221
222
  command: |
222
223
  sudo apt-get update
223
224
  sudo apt-get install openjdk-11-jdk
225
+ - run:
226
+ name: Install dependencies for coverage merge
227
+ command: |
228
+ bundler --version
229
+ bundle config set path './vendor/bundle'
230
+ bundle check || bundle install
231
+ environment:
232
+ BUNDLE_GEMFILE: './gemfiles/coverage_merge.gemfile'
233
+ - run:
234
+ name: Fetching partial coverage reports from workflow jobs
235
+ command: |
236
+ ./download.sh
237
+ - run:
238
+ name: Merging partial coverage reports for reporting
239
+ command: |
240
+ bundle exec rake coverage:merge_reports --trace
241
+ environment:
242
+ BUNDLE_GEMFILE: './gemfiles/coverage_merge.gemfile'
224
243
  - run:
225
244
  name: Run SonarQube to capture coverage
226
245
  command: |
227
- wget -O /tmp/sonar-scanner-cli.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.6.2.2472.zip
246
+ wget -O /tmp/sonar-scanner-cli.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.8.1.3023.zip
228
247
  unzip -d /tmp /tmp/sonar-scanner-cli.zip
229
248
  if [[ -n "${CIRCLE_PR_NUMBER}" ]]; then
230
- /tmp/sonar-scanner-4.6.2.2472/bin/sonar-scanner \
249
+ /tmp/sonar-scanner-4.8.1.3023/bin/sonar-scanner \
231
250
  -Dsonar.host.url="${SONARQUBE_URL}" \
232
251
  -Dsonar.login="${SONARQUBE_LOGIN}" \
233
252
  -Dsonar.pullrequest.key="${CIRCLE_PR_NUMBER}" \
234
253
  -Dsonar.pullrequest.branch="${CIRCLE_BRANCH}"
235
254
  else
236
- /tmp/sonar-scanner-4.6.2.2472/bin/sonar-scanner \
255
+ /tmp/sonar-scanner-4.8.1.3023/bin/sonar-scanner \
237
256
  -Dsonar.host.url="${SONARQUBE_URL}" \
238
257
  -Dsonar.login="${SONARQUBE_LOGIN}" \
239
258
  -Dsonar.branch.name="${CIRCLE_BRANCH}"
240
259
  fi
260
+ - store_artifacts:
261
+ path: partial_coverage_results
262
+ - store_artifacts:
263
+ path: coverage
241
264
  run_tests:
242
265
  steps:
243
266
  - run:
@@ -301,6 +324,10 @@ jobs:
301
324
  - checkout
302
325
  - setup
303
326
  - run_rubocop
327
+ report_coverage:
328
+ executor: ruby_32
329
+ steps:
330
+ - checkout
304
331
  - run_sonarqube
305
332
  publish:
306
333
  executor: ruby_27
@@ -397,3 +424,7 @@ workflows:
397
424
  gemfile:
398
425
  - "./gemfiles/rails_61.gemfile"
399
426
  - "./gemfiles/rails_70.gemfile"
427
+ - "./gemfiles/rails_71.gemfile"
428
+ report_coverage:
429
+ jobs:
430
+ - report_coverage
data/Gemfile CHANGED
@@ -4,7 +4,7 @@
4
4
  source 'https://rubygems.org'
5
5
 
6
6
  gem 'rake'
7
- gem 'minitest', '5.9.1'
7
+ gem 'minitest', '5.20.0'
8
8
  gem 'minitest-reporters'
9
9
  gem 'webmock'
10
10
  gem 'puma'
data/README.md CHANGED
@@ -1,7 +1,3 @@
1
- <div align="center">
2
- <img src="https://disznc.s3.amazonaws.com/Ruby-Dashboard-2020-02-10-at-2.31.36-PM.png"/>
3
- </div>
4
-
5
1
  # Instana
6
2
 
7
3
  The `instana` gem provides Ruby metrics and traces (request, queue & cross-host) for [Instana](https://www.instana.com/).
@@ -46,15 +42,15 @@ The `instana` gem is a zero configuration tool that will automatically collect k
46
42
 
47
43
  ## Configuration
48
44
 
49
- Although the gem has no configuration required for out of the box metrics and tracing, components can be configured if needed. See our [Configuration](https://docs.instana.io/ecosystem/ruby/configuration/) page.
45
+ Although the gem has no configuration required for out of the box metrics and tracing, components can be configured if needed. See our [Configuration](https://www.ibm.com/docs/en/instana-observability/current?topic=ruby-configuration-configuring-instana-gem) page.
50
46
 
51
47
  ## Tracing
52
48
 
53
- This Ruby gem provides a simple API for tracing and also supports [OpenTracing](http://opentracing.io/). See the [Ruby Tracing SDK](https://docs.instana.io/ecosystem/ruby/tracing-sdk/) and [OpenTracing](https://docs.instana.io/ecosystem/ruby/opentracing/) pages for details.
49
+ This Ruby gem provides a simple API for tracing and also supports [OpenTracing](http://opentracing.io/). See the [Ruby Tracing SDK](https://www.ibm.com/docs/en/instana-observability/current?topic=ruby-tracing-sdk) and [OpenTracing](https://www.ibm.com/docs/en/instana-observability/current?topic=ruby-opentracing) pages for details.
54
50
 
55
51
  ## Documentation
56
52
 
57
- You can find more documentation covering supported components and minimum versions in the Instana [documentation portal](https://docs.instana.io/ecosystem/ruby/).
53
+ You can find more documentation covering supported components and minimum versions in the Instana [documentation portal](https://www.ibm.com/docs/en/instana-observability/current?topic=technologies-monitoring-ruby).
58
54
 
59
55
  ## Want End User Monitoring (EUM)?
60
56
 
data/Rakefile CHANGED
@@ -13,11 +13,11 @@ Rake::TestTask.new(:test) do |t|
13
13
 
14
14
  t.libs << "test"
15
15
  t.libs << "lib"
16
-
16
+
17
17
  if ENV['APPRAISAL_INITIALIZED']
18
18
  appraised_group = File.basename(ENV['BUNDLE_GEMFILE']).split(/_[0-9]+\./).first
19
19
  suite_files = Dir['test/{instrumentation,frameworks}/*_test.rb']
20
-
20
+
21
21
  t.test_files = suite_files.select { |f| File.basename(f).start_with?(appraised_group) }
22
22
  else
23
23
  t.test_files = Dir[
@@ -27,4 +27,23 @@ Rake::TestTask.new(:test) do |t|
27
27
  end
28
28
  end
29
29
 
30
+ namespace :coverage do
31
+ task :merge_reports do
32
+ require 'simplecov'
33
+ require 'simplecov_json_formatter'
34
+
35
+ SimpleCov.start do
36
+ enable_coverage :branch
37
+ SimpleCov.collate Dir["partial_coverage_results/.resultset-*.json"] do
38
+ formatter SimpleCov::Formatter::MultiFormatter.new(
39
+ [
40
+ SimpleCov::Formatter::SimpleFormatter,
41
+ SimpleCov::Formatter::JSONFormatter
42
+ ]
43
+ )
44
+ end
45
+ end
46
+ end
47
+ end
48
+
30
49
  task :default => :test
data/download.sh ADDED
@@ -0,0 +1,85 @@
1
+ #!/usr/bin/env bash
2
+
3
+ if [[ -z ${CIRCLE_TOKEN} ]]
4
+ then
5
+ echo "ERROR: The CIRCLE_TOKEN variable is missing"
6
+ exit 255
7
+ fi
8
+
9
+ PROJECT_SLUG='https://circleci.com/api/v2/project/gh/instana/ruby-sensor'
10
+ PIPELINE_SLUG='https://circleci.com/api/v2/pipeline/'
11
+ WORKFLOW_SLUG='https://circleci.com/api/v2/workflow/'
12
+
13
+ echo "Getting Pipeline ID"
14
+ PIPELINE_ID=$(curl -s \
15
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
16
+ "${PROJECT_SLUG}/job/${CIRCLE_BUILD_NUM}" \
17
+ | jq -rj '.pipeline.id')
18
+
19
+
20
+ echo "Received Pipeline ID is: ${PIPELINE_ID}"
21
+
22
+ echo "Getting Workflows for Pipeline ID"
23
+ WORKFLOW_IDS=$(curl -s \
24
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
25
+ "${PIPELINE_SLUG}/${PIPELINE_ID}/workflow" \
26
+ | jq -r '.items[] | select(.name!="report_coverage") | .id')
27
+
28
+ echo "Received Workflow IDs are: ${WORKFLOW_IDS}"
29
+
30
+ for workflow_id in ${WORKFLOW_IDS}
31
+ do
32
+ echo "Waiting for workflow ${workflow_id} to finish"
33
+ while true
34
+ do
35
+ STATUS=$(curl -s \
36
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
37
+ "${WORKFLOW_SLUG}/${workflow_id}" \
38
+ | jq -r '.status')
39
+ if [[ ${STATUS} != "running" && ${STATUS} != "on_hold" ]]
40
+ then
41
+ break
42
+ else
43
+ echo "Workflow ${workflow_id} has not finished yet. Status is: ${STATUS}"
44
+ sleep 10
45
+ fi
46
+ done
47
+
48
+ if [[ "${STATUS}" != "success" ]]
49
+ then
50
+ echo "ERROR: Workflow ${workflow_id} did not succeed! Status is: ${STATUS}"
51
+ exit 254
52
+ else
53
+ echo "Workflow ${workflow_id} has finished successfully! Status is: ${STATUS}"
54
+ fi
55
+ done
56
+
57
+
58
+ echo "All workflows have successfully finished, downloading artifacts."
59
+
60
+ mkdir partial_coverage_results
61
+ for workflow_id in ${WORKFLOW_IDS}
62
+ do
63
+ JOB_NUMBERS=$(curl -s \
64
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
65
+ "${WORKFLOW_SLUG}/${workflow_id}/job" \
66
+ | jq -r '.items[] | .job_number' \
67
+ | tr '\n' ' ')
68
+
69
+ for job in ${JOB_NUMBERS}
70
+ do
71
+ ARTIFACT_DOWNLOAD_LINK=$(curl -s \
72
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
73
+ "${PROJECT_SLUG}/${job}/artifacts" \
74
+ | jq -r \
75
+ '.items[] | select(.path=="coverage/.resultset.json") | .url')
76
+ #'.items[] | select(.path=="coverage/coverage.json" or .path=="coverage/.resultset.json") | .url')
77
+ curl -s \
78
+ -L \
79
+ -H "Circle-Token: ${CIRCLE_TOKEN}" \
80
+ "${ARTIFACT_DOWNLOAD_LINK}" \
81
+ -o partial_coverage_results/.resultset-${job}.json
82
+ done
83
+ done
84
+
85
+ echo "All artifacts have been successfully downloaded."
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "webrick"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -0,0 +1,9 @@
1
+ # (c) Copyright IBM Corp. 2023
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rake"
6
+ gem "minitest", "5.20.0"
7
+ gem "minitest-reporters"
8
+ gem "rack-test"
9
+ gem "simplecov", "~> 0.21.2"
@@ -7,7 +7,7 @@ source "https://rubygems.org"
7
7
 
8
8
  gem "rack", "<3.0.0"
9
9
  gem "rake"
10
- gem "minitest", "5.18.1"
10
+ gem "minitest", "5.20.0"
11
11
  gem "minitest-reporters"
12
12
  gem "webmock"
13
13
  gem "puma"
@@ -4,7 +4,7 @@ source "https://rubygems.org"
4
4
 
5
5
  gem "rack", ">=3.0.0"
6
6
  gem "rake"
7
- gem "minitest", "5.18.1"
7
+ gem "minitest", "5.20.0"
8
8
  gem "minitest-reporters"
9
9
  gem "webmock"
10
10
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -5,7 +5,7 @@ source "https://rubygems.org"
5
5
  gem "rack"
6
6
  gem "rackup"
7
7
  gem "rake"
8
- gem "minitest", "5.18.1"
8
+ gem "minitest", "5.20.0"
9
9
  gem "minitest-reporters"
10
10
  gem "webmock"
11
11
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -11,7 +11,7 @@ gem "rubocop", "~> 1.9"
11
11
  gem "rack-test"
12
12
  gem "simplecov", "~> 0.21.2"
13
13
  gem "mail", ">= 2.8.1"
14
- gem "rails", ">= 7.0"
14
+ gem "rails", "7.0.8"
15
15
  gem "mysql2", "0.5.5"
16
16
  gem "pg"
17
17
  gem "sqlite3", "~> 1.4"
@@ -0,0 +1,19 @@
1
+ # (c) Copyright IBM Corp. 2023
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rake"
6
+ gem "minitest", "5.20.0"
7
+ gem "minitest-reporters"
8
+ gem "webmock"
9
+ gem "puma"
10
+ gem "rubocop", "~> 1.9"
11
+ gem "rack-test"
12
+ gem "simplecov", "~> 0.21.2"
13
+ gem "mail", ">= 2.8.1"
14
+ gem "rails", ">= 7.1"
15
+ gem "mysql2", "0.5.5"
16
+ gem "pg"
17
+ gem "sqlite3", "~> 1.4"
18
+
19
+ gemspec path: "../"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -7,7 +7,7 @@ source "https://rubygems.org"
7
7
 
8
8
  gem "redis", "< 5.0.0"
9
9
  gem "rake"
10
- gem "minitest", "5.18.1"
10
+ gem "minitest", "5.20.0"
11
11
  gem "minitest-reporters"
12
12
  gem "webmock"
13
13
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -8,7 +8,7 @@ source "https://rubygems.org"
8
8
  gem "rack"
9
9
  gem "rackup"
10
10
  gem "rake"
11
- gem "minitest", "5.18.1"
11
+ gem "minitest", "5.20.0"
12
12
  gem "minitest-reporters"
13
13
  gem "webmock"
14
14
  gem "puma"
@@ -7,7 +7,7 @@ source "https://rubygems.org"
7
7
 
8
8
  gem "rack", "<3.0.0"
9
9
  gem "rake"
10
- gem "minitest", "5.18.1"
10
+ gem "minitest", "5.20.0"
11
11
  gem "minitest-reporters"
12
12
  gem "webmock"
13
13
  gem "puma"
@@ -7,7 +7,7 @@ source "https://rubygems.org"
7
7
 
8
8
  gem "rack", "<3.0.0"
9
9
  gem "rake"
10
- gem "minitest", "5.18.1"
10
+ gem "minitest", "5.20.0"
11
11
  gem "minitest-reporters"
12
12
  gem "webmock"
13
13
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -6,13 +6,13 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
13
13
  gem "rubocop", "~> 1.9"
14
14
  gem "rack-test"
15
15
  gem "simplecov", "~> 0.21.2"
16
- gem "sidekiq", ">= 5.0", "< 6.0"
16
+ gem "sidekiq", "< 6.0"
17
17
 
18
18
  gemspec path: "../"
@@ -3,13 +3,13 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
10
10
  gem "rubocop", "~> 1.9"
11
11
  gem "rack-test"
12
12
  gem "simplecov", "~> 0.21.2"
13
- gem "sidekiq", ">= 6.0", "< 7.0"
13
+ gem "sidekiq", ">= 6.0.0", "< 6.5.0"
14
14
 
15
15
  gemspec path: "../"
@@ -0,0 +1,15 @@
1
+ # (c) Copyright IBM Corp. 2023
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "rake"
6
+ gem "minitest", "5.20.0"
7
+ gem "minitest-reporters"
8
+ gem "webmock"
9
+ gem "puma"
10
+ gem "rubocop", "~> 1.9"
11
+ gem "rack-test"
12
+ gem "simplecov", "~> 0.21.2"
13
+ gem "sidekiq", ">= 6.5.12", "< 7.0.0"
14
+
15
+ gemspec path: "../"
@@ -3,13 +3,13 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
10
10
  gem "rubocop", "~> 1.9"
11
11
  gem "rack-test"
12
12
  gem "simplecov", "~> 0.21.2"
13
- gem "sidekiq", ">= 7.0"
13
+ gem "sidekiq", ">= 7.2.0"
14
14
 
15
15
  gemspec path: "../"
@@ -6,7 +6,7 @@
6
6
  source "https://rubygems.org"
7
7
 
8
8
  gem "rake"
9
- gem "minitest", "5.18.1"
9
+ gem "minitest", "5.20.0"
10
10
  gem "minitest-reporters"
11
11
  gem "webmock"
12
12
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -3,7 +3,7 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "rake"
6
- gem "minitest", "5.18.1"
6
+ gem "minitest", "5.20.0"
7
7
  gem "minitest-reporters"
8
8
  gem "webmock"
9
9
  gem "puma"
@@ -5,8 +5,7 @@ module Instana
5
5
  module Activators
6
6
  class SidekiqClient < Activator
7
7
  def can_instrument?
8
- defined?(::Sidekiq) && ::Sidekiq.respond_to?(:configure_client) && ::Instana.config[:'sidekiq-client'][:enabled] &&
9
- Gem::Specification.find_by_name('sidekiq').version < Gem::Version.new('5.3')
8
+ defined?(::Sidekiq) && ::Sidekiq.respond_to?(:configure_client) && ::Instana.config[:'sidekiq-client'][:enabled]
10
9
  end
11
10
 
12
11
  def instrument
@@ -5,8 +5,7 @@ module Instana
5
5
  module Activators
6
6
  class SidekiqWorker < Activator
7
7
  def can_instrument?
8
- defined?(::Sidekiq) && ::Sidekiq.respond_to?(:configure_server) && ::Instana.config[:'sidekiq-worker'][:enabled] &&
9
- Gem::Specification.find_by_name('sidekiq').version < Gem::Version.new('5.3')
8
+ defined?(::Sidekiq) && ::Sidekiq.respond_to?(:configure_server) && ::Instana.config[:'sidekiq-worker'][:enabled]
10
9
  end
11
10
 
12
11
  def instrument
@@ -14,8 +14,17 @@ module Instana
14
14
  # Temporary until we move connection collection to redis
15
15
  # instrumentation
16
16
  Sidekiq.redis_pool.with do |client|
17
- opts = client.respond_to?(:connection) ? client.connection : client.client.options
18
- kv_payload[:'sidekiq-client'][:'redis-url'] = "#{opts[:host]}:#{opts[:port]}"
17
+ sidekiq_version = Gem::Specification.find_by_name('sidekiq').version
18
+ host, port = if sidekiq_version >= Gem::Version.new('7.0') && client.respond_to?(:config) && client.config.respond_to?(:host) && client.config.respond_to?(:port)
19
+ [client.config.host, client.config.port]
20
+ elsif client.respond_to?(:connection)
21
+ [client.connection[:host], client.connection[:port]]
22
+ elsif client.respond_to?(:client) && client.client.respond_to?(:options)
23
+ [client.client.options[:host], client.client.options[:port]]
24
+ else # Unexpected version, continue without recording any redis-url
25
+ break
26
+ end
27
+ kv_payload[:'sidekiq-client'][:'redis-url'] = "#{host}:#{port}"
19
28
  end
20
29
 
21
30
  context = ::Instana.tracer.context
@@ -14,8 +14,17 @@ module Instana
14
14
  # Temporary until we move connection collection to redis
15
15
  # instrumentation
16
16
  Sidekiq.redis_pool.with do |client|
17
- opts = client.respond_to?(:connection) ? client.connection : client.client.options
18
- kv_payload[:'sidekiq-worker'][:'redis-url'] = "#{opts[:host]}:#{opts[:port]}"
17
+ sidekiq_version = Gem::Specification.find_by_name('sidekiq').version
18
+ host, port = if sidekiq_version >= Gem::Version.new('7.0') && client.respond_to?(:config) && client.config.respond_to?(:host) && client.config.respond_to?(:port)
19
+ [client.config.host, client.config.port]
20
+ elsif client.respond_to?(:connection)
21
+ [client.connection[:host], client.connection[:port]]
22
+ elsif client.respond_to?(:client) && client.client.respond_to?(:options)
23
+ [client.client.options[:host], client.client.options[:port]]
24
+ else # Unexpected version, continue without recording any redis-url
25
+ break
26
+ end
27
+ kv_payload[:'sidekiq-worker'][:'redis-url'] = "#{host}:#{port}"
19
28
  end
20
29
 
21
30
  context = {}
@@ -2,6 +2,6 @@
2
2
  # (c) Copyright Instana Inc. 2016
3
3
 
4
4
  module Instana
5
- VERSION = "1.211.0"
5
+ VERSION = "1.212.0"
6
6
  VERSION_FULL = "instana-#{VERSION}"
7
7
  end
@@ -53,9 +53,11 @@ class HostAgentReportingObserverTest < Minitest::Test
53
53
 
54
54
  def test_agent_action
55
55
  action = JSON.dump(
56
- action: 'ruby.source',
57
- messageId: 'test',
58
- args: {file: 'test_helper.rb'}
56
+ {
57
+ action: 'ruby.source',
58
+ messageId: 'test',
59
+ args: {file: 'test_helper.rb'}
60
+ }
59
61
  )
60
62
 
61
63
  stub_request(:post, "http://10.10.10.10:9292/tracermetrics")
@@ -5,7 +5,11 @@ require 'test_helper'
5
5
 
6
6
  class RailsActionControllerTest < Minitest::Test
7
7
  include Rack::Test::Methods
8
- APP = Rack::Builder.parse_file('test/support/apps/action_controller/config.ru').first
8
+ APP = Rack::Builder.parse_file('test/support/apps/action_controller/config.ru')
9
+ railties_version = Gem::Specification.find_by_name('railties').version
10
+ if railties_version < Gem::Version.new('7.1.0')
11
+ APP = APP.first
12
+ end
9
13
 
10
14
  def app
11
15
  APP
@@ -5,7 +5,11 @@ require 'test_helper'
5
5
 
6
6
  class RailsActionViewTest < Minitest::Test
7
7
  include Rack::Test::Methods
8
- APP = Rack::Builder.parse_file('test/support/apps/action_view/config.ru').first
8
+ APP = Rack::Builder.parse_file('test/support/apps/action_view/config.ru')
9
+ railties_version = Gem::Specification.find_by_name('railties').version
10
+ if railties_version < Gem::Version.new('7.1.0')
11
+ APP = APP.first
12
+ end
9
13
 
10
14
  def app
11
15
  APP
@@ -13,14 +13,17 @@ class RailsActiveRecordDatabaseMissingTest < Minitest::Test
13
13
  SQLite3::Database.new('/tmp/test.db')
14
14
  ENV['DATABASE_URL'] = 'sqlite3:///tmp/test.db'
15
15
 
16
- @connection = ActiveRecord::Base.establish_connection(ENV['DATABASE_URL'])
16
+ @connection_pool = ActiveRecord::Base.establish_connection(ENV['DATABASE_URL'])
17
+ c = ::ActiveRecord::Base.connection
18
+ c.execute 'PRAGMA journal_mode=DELETE'
19
+ c.execute 'PRAGMA locking_mode=NORMAL'
17
20
  ActiveRecord::Migration.suppress_messages do
18
21
  ActiveRecord::Migration.run(CreateBlocks, direction: :up)
19
22
  end
20
23
  end
21
24
 
22
25
  def teardown
23
- ActiveRecord::Base.remove_connection(@connection)
26
+ @connection_pool.disconnect
24
27
  ENV['DATABASE_URL'] = @old_url
25
28
  end
26
29
 
@@ -34,7 +37,6 @@ class RailsActiveRecordDatabaseMissingTest < Minitest::Test
34
37
  end
35
38
 
36
39
  spans = ::Instana.processor.queued_spans
37
- assert_equal 3, spans.length
38
40
  span = find_first_span_by_name(spans, :activerecord)
39
41
 
40
42
  assert_equal 1, span[:ec]
@@ -6,22 +6,6 @@ require 'support/apps/sidekiq/boot'
6
6
 
7
7
  class SidekiqClientTest < Minitest::Test
8
8
  def setup
9
- @framework_version = Gem::Specification.find_by_name('sidekiq').version
10
- @supported_framework_version = @framework_version < Gem::Version.new('5.3')
11
- @execute_test_if_framework_version_is_supported = lambda {
12
- unless @supported_framework_version
13
- skip "Skipping this test because sidekiq version #{@framework_version} is not yet supported!"
14
- end
15
- }
16
- @execute_test_only_if_framework_version_is_not_supported = lambda {
17
- if @supported_framework_version
18
- skip "Skipping this test because sidekiq version #{@framework_version} is already supported!"
19
- end
20
- }
21
-
22
- Sidekiq.configure_client do |config|
23
- config.redis = { url: ENV["REDIS_URL"] }
24
- end
25
9
  ::Sidekiq::Queue.new('some_random_queue').clear
26
10
  end
27
11
 
@@ -32,7 +16,6 @@ class SidekiqClientTest < Minitest::Test
32
16
  end
33
17
 
34
18
  def test_enqueue
35
- @execute_test_if_framework_version_is_supported.call
36
19
  clear_all!
37
20
  Instana.tracer.start_or_continue_trace(:sidekiqtests) do
38
21
  disable_redis_instrumentation
@@ -53,7 +36,6 @@ class SidekiqClientTest < Minitest::Test
53
36
  end
54
37
 
55
38
  def test_enqueue_failure
56
- @execute_test_if_framework_version_is_supported.call
57
39
  clear_all!
58
40
 
59
41
  Instana.tracer.start_or_continue_trace(:sidekiqtests) do
@@ -104,6 +86,7 @@ class SidekiqClientTest < Minitest::Test
104
86
  assert_equal 'some_random_queue', second_span[:data][:'sidekiq-client'][:queue]
105
87
  assert_equal 'SidekiqJobOne', second_span[:data][:'sidekiq-client'][:job]
106
88
  assert_equal "false", second_span[:data][:'sidekiq-client'][:retry]
89
+ assert second_span[:data][:'sidekiq-client'][:'redis-url']
107
90
  assert_equal job['jid'], second_span[:data][:'sidekiq-client'][:job_id]
108
91
  end
109
92
 
@@ -124,6 +107,7 @@ class SidekiqClientTest < Minitest::Test
124
107
  assert_equal 'some_random_queue', second_span[:data][:'sidekiq-client'][:queue]
125
108
  assert_equal 'SidekiqJobTwo', second_span[:data][:'sidekiq-client'][:job]
126
109
  assert_equal "false", second_span[:data][:'sidekiq-client'][:retry]
110
+ assert second_span[:data][:'sidekiq-client'][:'redis-url']
127
111
  assert_equal 'Fail to enqueue job', second_span[:data][:log][:message]
128
112
  end
129
113
 
@@ -5,55 +5,13 @@ require 'test_helper'
5
5
  require 'support/apps/sidekiq/boot'
6
6
 
7
7
  class SidekiqServerTest < Minitest::Test
8
- def setup
9
- @framework_version = Gem::Specification.find_by_name('sidekiq').version
10
- @supported_framework_version = @framework_version < Gem::Version.new('5.3')
11
- @execute_test_if_framework_version_is_supported = lambda {
12
- unless @supported_framework_version
13
- skip "Skipping this test because sidekiq version #{@framework_version} is not yet supported!"
14
- end
15
- }
16
- @execute_test_only_if_framework_version_is_not_supported = lambda {
17
- if @supported_framework_version
18
- skip "Skipping this test because sidekiq version #{@framework_version} is already supported!"
19
- end
20
- }
21
-
22
- Sidekiq.configure_client do |config|
23
- config.redis = { url: ENV["REDIS_URL"] }
24
- end
25
- end
26
-
27
8
  def test_config_defaults
28
9
  assert ::Instana.config[:'sidekiq-worker'].is_a?(Hash)
29
10
  assert ::Instana.config[:'sidekiq-worker'].key?(:enabled)
30
11
  assert_equal true, ::Instana.config[:'sidekiq-worker'][:enabled]
31
12
  end
32
13
 
33
- def test_no_sidekiq_tracing_if_unsupported_version_only_redis
34
- @execute_test_only_if_framework_version_is_not_supported.call
35
- clear_all!
36
- ::Sidekiq.redis_pool.with do |redis|
37
- redis.sadd('queues'.freeze, 'important')
38
- redis.lpush(
39
- 'queue:important',
40
- <<-JSON
41
- {
42
- "class":"SidekiqJobOne",
43
- "args":[1,2,3],
44
- "queue":"important",
45
- "jid":"123456789"
46
- }
47
- JSON
48
- )
49
- end
50
-
51
- spans = Instana.processor.queued_spans
52
- assert spans
53
- end
54
-
55
14
  def test_successful_worker_starts_new_trace
56
- @execute_test_if_framework_version_is_supported.call
57
15
  clear_all!
58
16
  $sidekiq_mode = :server
59
17
  inject_instrumentation
@@ -84,7 +42,6 @@ class SidekiqServerTest < Minitest::Test
84
42
  end
85
43
 
86
44
  def test_failed_worker_starts_new_trace
87
- @execute_test_if_framework_version_is_supported.call
88
45
  clear_all!
89
46
  $sidekiq_mode = :server
90
47
  inject_instrumentation
@@ -116,7 +73,6 @@ class SidekiqServerTest < Minitest::Test
116
73
  end
117
74
 
118
75
  def test_successful_worker_continues_previous_trace
119
- @execute_test_if_framework_version_is_supported.call
120
76
  clear_all!
121
77
  $sidekiq_mode = :server
122
78
  inject_instrumentation
@@ -150,7 +106,6 @@ class SidekiqServerTest < Minitest::Test
150
106
  end
151
107
 
152
108
  def test_failed_worker_continues_previous_trace
153
- @execute_test_if_framework_version_is_supported.call
154
109
  clear_all!
155
110
  $sidekiq_mode = :server
156
111
  inject_instrumentation
@@ -200,6 +155,7 @@ class SidekiqServerTest < Minitest::Test
200
155
 
201
156
  assert_equal 'important', worker_span[:data][:'sidekiq-worker'][:queue]
202
157
  assert_equal 'SidekiqJobOne', worker_span[:data][:'sidekiq-worker'][:job]
158
+ assert worker_span[:data][:'sidekiq-worker'][:'redis-url']
203
159
  assert_equal false, worker_span[:data][:'sidekiq-worker'][:job_id].nil?
204
160
  end
205
161
 
@@ -208,6 +164,7 @@ class SidekiqServerTest < Minitest::Test
208
164
 
209
165
  assert_equal 'important', worker_span[:data][:'sidekiq-worker'][:queue]
210
166
  assert_equal 'SidekiqJobTwo', worker_span[:data][:'sidekiq-worker'][:job]
167
+ assert worker_span[:data][:'sidekiq-worker'][:'redis-url']
211
168
  assert_equal false, worker_span[:data][:'sidekiq-worker'][:job_id].nil?
212
169
 
213
170
  assert_equal true, worker_span[:data][:'sidekiq-worker'][:error]
@@ -217,6 +174,7 @@ class SidekiqServerTest < Minitest::Test
217
174
  def assert_client_span(client_span, job)
218
175
  assert_equal :'sidekiq-client', client_span[:n]
219
176
  assert_equal 'important', client_span[:data][:'sidekiq-client'][:queue]
177
+ assert client_span[:data][:'sidekiq-client'][:'redis-url']
220
178
  assert_equal job.name, client_span[:data][:'sidekiq-client'][:job]
221
179
  end
222
180
  end
@@ -12,15 +12,15 @@ require_relative 'jobs/sidekiq_job_2'
12
12
  ::Instana.logger.info "Booting instrumented sidekiq worker for tests."
13
13
  ::Sidekiq.logger.level = ::Logger::FATAL
14
14
 
15
- properties = {queues: ['important'], concurrency: 2}
16
-
17
15
  sidekiq_version = Gem::Specification.find_by_name('sidekiq').version
18
- config_or_options =
19
- if sidekiq_version >= Gem::Version.new('7.0.0')
20
- ::Sidekiq::Config.new(Sidekiq.default_configuration.merge!(properties))
21
- else
22
- ::Sidekiq.options.merge(properties)
23
- end
16
+ cli = ::Sidekiq::CLI.instance
17
+ cli.parse(['sidekiq', '-r', __FILE__, '-C', "#{File.dirname(__FILE__)}/config.yaml"])
18
+
19
+ config_or_options = if sidekiq_version >= Gem::Version.new('6.5.0')
20
+ cli.config
21
+ else
22
+ cli.send :options
23
+ end
24
24
 
25
25
  sidekiq_thread = Thread.new do
26
26
  launcher = ::Sidekiq::Launcher.new(
data/test/test_helper.rb CHANGED
@@ -12,6 +12,7 @@ begin
12
12
 
13
13
  add_filter %r{^/test/}
14
14
 
15
+ command_name "Job #{ENV['CIRCLE_BUILD_NUM']}" if ENV['CIRCLE_BUILD_NUM']
15
16
  add_group(
16
17
  'In Process Collector',
17
18
  [%r{lib/instana/(agent|backend|tracing|collectors|open_tracing|snapshot)}, %r{lib/instana/[^/]+\.rb}]
@@ -60,7 +61,7 @@ if ENV['CI']
60
61
  ])
61
62
  else
62
63
  Minitest::Reporters.use!([
63
- MiniTest::Reporters::SpecReporter.new
64
+ Minitest::Reporters::SpecReporter.new
64
65
  ])
65
66
  end
66
67
  Minitest::Test.include(Instana::TestHelpers)
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.211.0
4
+ version: 1.212.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: 2023-09-25 00:00:00.000000000 Z
11
+ date: 2023-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -153,12 +153,14 @@ files:
153
153
  - bin/console
154
154
  - bin/setup
155
155
  - docker-compose.yml
156
+ - download.sh
156
157
  - examples/opentracing.rb
157
158
  - examples/tracing.rb
158
159
  - extras/license_header.rb
159
160
  - gemfiles/.bundle/config
160
161
  - gemfiles/aws_30.gemfile
161
162
  - gemfiles/aws_60.gemfile
163
+ - gemfiles/coverage_merge.gemfile
162
164
  - gemfiles/cuba_30.gemfile
163
165
  - gemfiles/cuba_40.gemfile
164
166
  - gemfiles/dalli_20.gemfile
@@ -183,6 +185,7 @@ files:
183
185
  - gemfiles/rails_60.gemfile
184
186
  - gemfiles/rails_61.gemfile
185
187
  - gemfiles/rails_70.gemfile
188
+ - gemfiles/rails_71.gemfile
186
189
  - gemfiles/redis_40.gemfile
187
190
  - gemfiles/resque_122.gemfile
188
191
  - gemfiles/resque_20.gemfile
@@ -195,6 +198,7 @@ files:
195
198
  - gemfiles/sidekiq_42.gemfile
196
199
  - gemfiles/sidekiq_50.gemfile
197
200
  - gemfiles/sidekiq_60.gemfile
201
+ - gemfiles/sidekiq_65.gemfile
198
202
  - gemfiles/sidekiq_70.gemfile
199
203
  - gemfiles/sinatra_14.gemfile
200
204
  - gemfiles/sinatra_22.gemfile