ddtrace 0.38.0 → 0.39.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.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/Appraisals +29 -5
  3. data/CHANGELOG.md +31 -1
  4. data/Rakefile +69 -66
  5. data/docs/GettingStarted.md +85 -50
  6. data/lib/ddtrace.rb +1 -0
  7. data/lib/ddtrace/configuration/settings.rb +9 -3
  8. data/lib/ddtrace/contrib/action_cable/configuration/settings.rb +7 -2
  9. data/lib/ddtrace/contrib/action_cable/ext.rb +5 -2
  10. data/lib/ddtrace/contrib/action_pack/action_controller/instrumentation.rb +7 -0
  11. data/lib/ddtrace/contrib/action_pack/configuration/settings.rb +7 -2
  12. data/lib/ddtrace/contrib/action_pack/ext.rb +5 -2
  13. data/lib/ddtrace/contrib/action_view/configuration/settings.rb +7 -2
  14. data/lib/ddtrace/contrib/action_view/ext.rb +5 -2
  15. data/lib/ddtrace/contrib/active_model_serializers/configuration/settings.rb +7 -2
  16. data/lib/ddtrace/contrib/active_model_serializers/ext.rb +5 -2
  17. data/lib/ddtrace/contrib/active_record/configuration/settings.rb +7 -2
  18. data/lib/ddtrace/contrib/active_record/ext.rb +5 -2
  19. data/lib/ddtrace/contrib/active_support/configuration/settings.rb +7 -2
  20. data/lib/ddtrace/contrib/active_support/ext.rb +5 -2
  21. data/lib/ddtrace/contrib/aws/configuration/settings.rb +7 -2
  22. data/lib/ddtrace/contrib/aws/ext.rb +5 -2
  23. data/lib/ddtrace/contrib/concurrent_ruby/configuration/settings.rb +5 -0
  24. data/lib/ddtrace/contrib/concurrent_ruby/ext.rb +1 -0
  25. data/lib/ddtrace/contrib/configuration/settings.rb +1 -0
  26. data/lib/ddtrace/contrib/dalli/configuration/settings.rb +7 -2
  27. data/lib/ddtrace/contrib/dalli/ext.rb +5 -2
  28. data/lib/ddtrace/contrib/delayed_job/configuration/settings.rb +7 -2
  29. data/lib/ddtrace/contrib/delayed_job/ext.rb +5 -2
  30. data/lib/ddtrace/contrib/elasticsearch/configuration/settings.rb +7 -2
  31. data/lib/ddtrace/contrib/elasticsearch/ext.rb +5 -2
  32. data/lib/ddtrace/contrib/ethon/configuration/settings.rb +7 -2
  33. data/lib/ddtrace/contrib/ethon/ext.rb +5 -2
  34. data/lib/ddtrace/contrib/excon/configuration/settings.rb +7 -2
  35. data/lib/ddtrace/contrib/excon/ext.rb +5 -2
  36. data/lib/ddtrace/contrib/extensions.rb +1 -1
  37. data/lib/ddtrace/contrib/faraday/configuration/settings.rb +7 -2
  38. data/lib/ddtrace/contrib/faraday/ext.rb +5 -2
  39. data/lib/ddtrace/contrib/faraday/patcher.rb +12 -3
  40. data/lib/ddtrace/contrib/grape/configuration/settings.rb +7 -3
  41. data/lib/ddtrace/contrib/grape/ext.rb +5 -2
  42. data/lib/ddtrace/contrib/graphql/configuration/settings.rb +7 -2
  43. data/lib/ddtrace/contrib/graphql/ext.rb +5 -2
  44. data/lib/ddtrace/contrib/grpc/configuration/settings.rb +7 -2
  45. data/lib/ddtrace/contrib/grpc/ext.rb +5 -2
  46. data/lib/ddtrace/contrib/http/configuration/settings.rb +7 -2
  47. data/lib/ddtrace/contrib/http/ext.rb +5 -2
  48. data/lib/ddtrace/contrib/httprb/configuration/settings.rb +7 -2
  49. data/lib/ddtrace/contrib/httprb/ext.rb +5 -2
  50. data/lib/ddtrace/contrib/httprb/instrumentation.rb +3 -6
  51. data/lib/ddtrace/contrib/kafka/configuration/settings.rb +7 -2
  52. data/lib/ddtrace/contrib/kafka/ext.rb +5 -2
  53. data/lib/ddtrace/contrib/mongodb/configuration/settings.rb +7 -2
  54. data/lib/ddtrace/contrib/mongodb/ext.rb +5 -2
  55. data/lib/ddtrace/contrib/mysql2/configuration/settings.rb +7 -2
  56. data/lib/ddtrace/contrib/mysql2/ext.rb +5 -2
  57. data/lib/ddtrace/contrib/presto/configuration/settings.rb +7 -2
  58. data/lib/ddtrace/contrib/presto/ext.rb +5 -2
  59. data/lib/ddtrace/contrib/racecar/configuration/settings.rb +7 -2
  60. data/lib/ddtrace/contrib/racecar/ext.rb +5 -2
  61. data/lib/ddtrace/contrib/rack/configuration/settings.rb +7 -2
  62. data/lib/ddtrace/contrib/rack/ext.rb +5 -2
  63. data/lib/ddtrace/contrib/rails/configuration/settings.rb +7 -2
  64. data/lib/ddtrace/contrib/rails/ext.rb +5 -2
  65. data/lib/ddtrace/contrib/rake/configuration/settings.rb +7 -3
  66. data/lib/ddtrace/contrib/rake/ext.rb +5 -2
  67. data/lib/ddtrace/contrib/redis/configuration/settings.rb +7 -2
  68. data/lib/ddtrace/contrib/redis/ext.rb +5 -2
  69. data/lib/ddtrace/contrib/resque/configuration/settings.rb +7 -2
  70. data/lib/ddtrace/contrib/resque/ext.rb +5 -2
  71. data/lib/ddtrace/contrib/rest_client/configuration/settings.rb +7 -2
  72. data/lib/ddtrace/contrib/rest_client/ext.rb +5 -2
  73. data/lib/ddtrace/contrib/sequel/configuration/settings.rb +7 -2
  74. data/lib/ddtrace/contrib/sequel/ext.rb +5 -2
  75. data/lib/ddtrace/contrib/sequel/utils.rb +19 -1
  76. data/lib/ddtrace/contrib/shoryuken/configuration/settings.rb +7 -2
  77. data/lib/ddtrace/contrib/shoryuken/ext.rb +5 -2
  78. data/lib/ddtrace/contrib/sidekiq/configuration/settings.rb +7 -2
  79. data/lib/ddtrace/contrib/sidekiq/ext.rb +5 -2
  80. data/lib/ddtrace/contrib/sinatra/configuration/settings.rb +7 -2
  81. data/lib/ddtrace/contrib/sinatra/ext.rb +5 -2
  82. data/lib/ddtrace/contrib/sneakers/configuration/settings.rb +32 -0
  83. data/lib/ddtrace/contrib/sneakers/ext.rb +22 -0
  84. data/lib/ddtrace/contrib/sneakers/integration.rb +41 -0
  85. data/lib/ddtrace/contrib/sneakers/patcher.rb +24 -0
  86. data/lib/ddtrace/contrib/sneakers/tracer.rb +58 -0
  87. data/lib/ddtrace/contrib/sucker_punch/configuration/settings.rb +7 -2
  88. data/lib/ddtrace/contrib/sucker_punch/ext.rb +5 -2
  89. data/lib/ddtrace/diagnostics/environment_logger.rb +1 -1
  90. data/lib/ddtrace/environment.rb +14 -4
  91. data/lib/ddtrace/ext/diagnostics.rb +2 -1
  92. data/lib/ddtrace/ext/transport.rb +1 -0
  93. data/lib/ddtrace/logger.rb +1 -1
  94. data/lib/ddtrace/runtime/metrics.rb +18 -4
  95. data/lib/ddtrace/transport/http.rb +15 -0
  96. data/lib/ddtrace/transport/http/adapters/test.rb +2 -0
  97. data/lib/ddtrace/version.rb +1 -1
  98. metadata +36 -46
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88a2890ed343b6cfef9752a3bbeb34c4a670a86755c66f99d625fe10f9172f5f
4
- data.tar.gz: e77520aa45dad85b0a8198233dd7e1bc485db11e8d478eb606401aaa9e17f2f9
3
+ metadata.gz: dabe2325911d2a18a25e4b4e09f07bd0c132e68725b455f2313742ddceaff878
4
+ data.tar.gz: c3e395ea4faba49b4220842eb89f3aaac353bbf2d30d286b382d1b59f17b248f
5
5
  SHA512:
6
- metadata.gz: af5e2a13d1960b68d4b4d9c39661052898ce7636eef5866447ee67cb23d2f9e4a4d98aed3be403780a5d31c7c7a588cc7821dcf8b161679e211a6d315932f1bf
7
- data.tar.gz: f0dc91d291576bec7a7b5ed7e494a09d2a976acfe7aa38999d2c8be893117757925253192f83f70317a8f60eee3d7fcc122aa8c33867409db5ade6b94f9148f4
6
+ metadata.gz: 0bcecad99a9d2ee23ac3b57ff7f82724837bdcdebaaae3fb6014367b06d36d990aaabd7c8284da08f20970d47b15852aa011b3e94821472e53371f6b419d5cbd
7
+ data.tar.gz: 9c64c7a12a16524b388d62534765799041f6c9466272042184703b6a1776e2f3dcb489a04e7edbc96b1d8c78ede8855067488f1ae9ab824ea29293c18bf4e626
data/Appraisals CHANGED
@@ -76,6 +76,7 @@ elsif Gem::Version.new('2.0.0') <= Gem::Version.new(RUBY_VERSION) \
76
76
  gem 'http'
77
77
  gem 'mongo', '< 2.5'
78
78
  gem 'mysql2', '0.3.21', platform: :ruby
79
+ gem 'pg', '< 1.0', platform: :ruby
79
80
  gem 'rack', '1.4.7'
80
81
  gem 'rack-cache', '1.7.1'
81
82
  gem 'rack-test', '0.7.0'
@@ -188,6 +189,7 @@ elsif Gem::Version.new('2.1.0') <= Gem::Version.new(RUBY_VERSION) \
188
189
  gem 'http'
189
190
  gem 'mongo', '< 2.5'
190
191
  gem 'mysql2', '0.3.21', platform: :ruby
192
+ gem 'pg', '< 1.0', platform: :ruby
191
193
  gem 'rack', '1.4.7'
192
194
  gem 'rack-cache', '1.7.1'
193
195
  gem 'rack-test', '0.7.0'
@@ -339,6 +341,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
339
341
  gem 'delayed_job'
340
342
  gem 'delayed_job_active_record'
341
343
  gem 'elasticsearch-transport'
344
+ gem 'pg', platform: :ruby
342
345
  gem 'presto-client', '>= 0.5.14'
343
346
  gem 'ethon'
344
347
  gem 'excon'
@@ -362,6 +365,7 @@ elsif Gem::Version.new('2.2.0') <= Gem::Version.new(RUBY_VERSION) \
362
365
  gem 'shoryuken'
363
366
  gem 'sidekiq'
364
367
  gem 'sinatra'
368
+ gem 'sneakers', '>= 2.12.0'
365
369
  gem 'sqlite3', '~> 1.3.6'
366
370
  gem 'sucker_punch'
367
371
  gem 'typhoeus'
@@ -511,6 +515,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
511
515
  gem 'http'
512
516
  gem 'mongo', '>= 2.8.0'
513
517
  gem 'mysql2', '< 0.5', platform: :ruby
518
+ gem 'pg', platform: :ruby
514
519
  gem 'presto-client', '>= 0.5.14'
515
520
  gem 'racecar', '>= 0.3.5'
516
521
  gem 'rack', '< 2.1.0' # Locked due to grape incompatibility: https://github.com/ruby-grape/grape/issues/1980
@@ -524,6 +529,7 @@ elsif Gem::Version.new('2.3.0') <= Gem::Version.new(RUBY_VERSION) \
524
529
  gem 'shoryuken'
525
530
  gem 'sidekiq'
526
531
  gem 'sinatra'
532
+ gem 'sneakers', '>= 2.12.0'
527
533
  gem 'sqlite3', '~> 1.3.6'
528
534
  gem 'sucker_punch'
529
535
  gem 'typhoeus'
@@ -592,6 +598,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
592
598
  gem 'http'
593
599
  gem 'mongo', '>= 2.8.0'
594
600
  gem 'mysql2', '< 0.5', platform: :ruby
601
+ gem 'pg', platform: :ruby
595
602
  gem 'presto-client', '>= 0.5.14'
596
603
  gem 'racecar', '>= 0.3.5'
597
604
  gem 'rack'
@@ -605,6 +612,7 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
605
612
  gem 'shoryuken'
606
613
  gem 'sidekiq'
607
614
  gem 'sinatra'
615
+ gem 'sneakers', '>= 2.12.0'
608
616
  gem 'sqlite3', '~> 1.3.6'
609
617
  gem 'sucker_punch'
610
618
  gem 'typhoeus'
@@ -616,22 +624,24 @@ elsif Gem::Version.new('2.4.0') <= Gem::Version.new(RUBY_VERSION) \
616
624
  end
617
625
  elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
618
626
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.6.0')
619
- if RUBY_PLATFORM != 'java'
620
627
  appraise 'rails5-mysql2' do
621
628
  gem 'rails', '~> 5.2.1'
622
629
  gem 'mysql2', '< 1', platform: :ruby
630
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
623
631
  gem 'sprockets', '< 4'
624
632
  end
625
633
 
626
634
  appraise 'rails5-postgres' do
627
635
  gem 'rails', '~> 5.2.1'
628
636
  gem 'pg', '< 1.0', platform: :ruby
637
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
629
638
  gem 'sprockets', '< 4'
630
639
  end
631
640
 
632
641
  appraise 'rails5-postgres-redis' do
633
642
  gem 'rails', '~> 5.2.1'
634
643
  gem 'pg', '< 1.0', platform: :ruby
644
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
635
645
  gem 'redis', '>= 4.0.1'
636
646
  gem 'sprockets', '< 4'
637
647
  end
@@ -639,6 +649,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
639
649
  appraise 'rails5-postgres-redis-activesupport' do
640
650
  gem 'rails', '~> 5.2.1'
641
651
  gem 'pg', '< 1.0', platform: :ruby
652
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
642
653
  gem 'redis', '>= 4.0.1'
643
654
  gem 'sprockets', '< 4'
644
655
  end
@@ -646,6 +657,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
646
657
  appraise 'rails5-postgres-sidekiq' do
647
658
  gem 'rails', '~> 5.2.1'
648
659
  gem 'pg', '< 1.0', platform: :ruby
660
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
649
661
  gem 'sidekiq'
650
662
  gem 'activejob'
651
663
  gem 'sprockets', '< 4'
@@ -654,18 +666,21 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
654
666
  appraise 'rails6-mysql2' do
655
667
  gem 'rails', '~> 6.0.0'
656
668
  gem 'mysql2', '< 1', platform: :ruby
669
+ gem 'activerecord-jdbcmysql-adapter', '>= 60', platform: :jruby # try remove >= 60
657
670
  gem 'sprockets', '< 4'
658
671
  end
659
672
 
660
673
  appraise 'rails6-postgres' do
661
674
  gem 'rails', '~> 6.0.0'
662
675
  gem 'pg', '< 1.0', platform: :ruby
676
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
663
677
  gem 'sprockets', '< 4'
664
678
  end
665
679
 
666
680
  appraise 'rails6-postgres-redis' do
667
681
  gem 'rails', '~> 6.0.0'
668
682
  gem 'pg', '< 1.0', platform: :ruby
683
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
669
684
  gem 'redis', '>= 4.0.1'
670
685
  gem 'sprockets', '< 4'
671
686
  end
@@ -673,6 +688,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
673
688
  appraise 'rails6-postgres-redis-activesupport' do
674
689
  gem 'rails', '~> 6.0.0'
675
690
  gem 'pg', '< 1.0', platform: :ruby
691
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
676
692
  gem 'redis', '>= 4.0.1'
677
693
  gem 'sprockets', '< 4'
678
694
  end
@@ -680,6 +696,7 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
680
696
  appraise 'rails6-postgres-sidekiq' do
681
697
  gem 'rails', '~> 6.0.0'
682
698
  gem 'pg', '< 1.0', platform: :ruby
699
+ gem 'activerecord-jdbcpostgresql-adapter', '>= 60', platform: :jruby
683
700
  gem 'sidekiq'
684
701
  gem 'activejob'
685
702
  gem 'sprockets', '< 4'
@@ -701,12 +718,15 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
701
718
  gem 'faraday'
702
719
  gem 'grape'
703
720
  gem 'graphql'
704
- gem 'grpc'
721
+ gem 'grpc', platform: :ruby
705
722
  gem 'hiredis'
706
723
  gem 'http'
707
724
  gem 'mongo', '>= 2.8.0'
708
725
  gem 'mysql2', '< 0.5', platform: :ruby
709
- gem 'presto-client', '>= 0.5.14'
726
+ gem 'activerecord-jdbcmysql-adapter', platform: :jruby
727
+ gem 'pg', platform: :ruby
728
+ gem 'activerecord-jdbcpostgresql-adapter', platform: :jruby
729
+ gem 'presto-client', '>= 0.5.14'
710
730
  gem 'racecar', '>= 0.3.5'
711
731
  gem 'rack'
712
732
  gem 'rack-test'
@@ -719,7 +739,8 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
719
739
  gem 'shoryuken'
720
740
  gem 'sidekiq'
721
741
  gem 'sinatra'
722
- gem 'sqlite3', '~> 1.4.1'
742
+ gem 'sneakers', '>= 2.12.0'
743
+ gem 'sqlite3', '~> 1.4.1', platform: :ruby
723
744
  gem 'sucker_punch'
724
745
  gem 'typhoeus'
725
746
  end
@@ -727,7 +748,6 @@ elsif Gem::Version.new('2.5.0') <= Gem::Version.new(RUBY_VERSION) \
727
748
  appraise 'contrib-old' do
728
749
  gem 'faraday', '0.17'
729
750
  end
730
- end
731
751
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
732
752
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
733
753
  if RUBY_PLATFORM != 'java'
@@ -820,6 +840,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
820
840
  gem 'http'
821
841
  gem 'mongo', '>= 2.8.0'
822
842
  gem 'mysql2', '< 0.5', platform: :ruby
843
+ gem 'pg', platform: :ruby
823
844
  gem 'presto-client', '>= 0.5.14'
824
845
  gem 'racecar', '>= 0.3.5'
825
846
  gem 'rack'
@@ -833,6 +854,7 @@ elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
833
854
  gem 'shoryuken'
834
855
  gem 'sidekiq'
835
856
  gem 'sinatra'
857
+ gem 'sneakers', '>= 2.12.0'
836
858
  gem 'sqlite3', '~> 1.4.1'
837
859
  gem 'sucker_punch'
838
860
  gem 'typhoeus'
@@ -936,6 +958,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
936
958
  gem 'http'
937
959
  gem 'mongo', '>= 2.8.0'
938
960
  gem 'mysql2', '< 0.5', platform: :ruby
961
+ gem 'pg', platform: :ruby
939
962
  gem 'presto-client', '>= 0.5.14'
940
963
  gem 'racecar', '>= 0.3.5'
941
964
  gem 'rack'
@@ -949,6 +972,7 @@ elsif Gem::Version.new('2.7.0') <= Gem::Version.new(RUBY_VERSION)
949
972
  gem 'shoryuken'
950
973
  gem 'sidekiq'
951
974
  gem 'sinatra'
975
+ gem 'sneakers', '>= 2.12.0'
952
976
  gem 'sqlite3', '~> 1.4.1'
953
977
  gem 'sucker_punch'
954
978
  gem 'typhoeus'
@@ -2,6 +2,35 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.39.0] - 2020-08-05
6
+
7
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.39.0
8
+
9
+ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
10
+
11
+ ### Added
12
+
13
+ - JRuby 9.2 support (#1126)
14
+ - Sneakers integration (#1121) (@janz93)
15
+
16
+ ### Changed
17
+
18
+ - Consistent environment variables across languages (#1115)
19
+ - Default logger level from WARN to INFO (#1120) (@gingerlime)
20
+ - This change also reduces the startup environment log message to INFO level (#1104)
21
+
22
+ ### Fixed
23
+
24
+ - HTTP::StateError on error responses for http.rb (#1116, #1122) (@evan-waters)
25
+ - Startup log error when using the test adapter (#1125, #1131) (@benhutton)
26
+ - Warning message for Faraday < 1.0 (#1129) (@fledman, @tjwp)
27
+ - Propagate Rails error message to Rack span (#1124)
28
+
29
+ ### Refactored
30
+
31
+ - Improved ActiveRecord documentation (#1119)
32
+ - Improvements to test suite (#1105, #1118)
33
+
5
34
  ## [0.38.0] - 2020-07-13
6
35
 
7
36
  Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.38.0
@@ -1305,7 +1334,8 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
1305
1334
 
1306
1335
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
1307
1336
 
1308
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...master
1337
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...master
1338
+ [0.39.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
1309
1339
  [0.38.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
1310
1340
  [0.37.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.36.0...v0.37.0
1311
1341
  [0.36.0]: https://github.com/DataDog/dd-trace-rb/compare/v0.35.2...v0.36.0
data/Rakefile CHANGED
@@ -110,6 +110,7 @@ namespace :spec do
110
110
  :shoryuken,
111
111
  :sidekiq,
112
112
  :sinatra,
113
+ :sneakers,
113
114
  :sucker_punch,
114
115
  :suite
115
116
  ].each do |contrib|
@@ -354,6 +355,7 @@ task :ci do
354
355
  sh 'bundle exec appraisal contrib rake spec:shoryuken'
355
356
  sh 'bundle exec appraisal contrib rake spec:sidekiq'
356
357
  sh 'bundle exec appraisal contrib rake spec:sinatra'
358
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
357
359
  sh 'bundle exec appraisal contrib rake spec:sucker_punch'
358
360
  sh 'bundle exec appraisal contrib rake spec:suite'
359
361
  # Rails minitests
@@ -429,6 +431,7 @@ task :ci do
429
431
  sh 'bundle exec appraisal contrib rake spec:shoryuken'
430
432
  sh 'bundle exec appraisal contrib rake spec:sidekiq'
431
433
  sh 'bundle exec appraisal contrib rake spec:sinatra'
434
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
432
435
  sh 'bundle exec appraisal contrib rake spec:sucker_punch'
433
436
  sh 'bundle exec appraisal contrib rake spec:suite'
434
437
  # Contrib specs with old gem versions
@@ -509,6 +512,7 @@ task :ci do
509
512
  sh 'bundle exec appraisal contrib rake spec:shoryuken'
510
513
  sh 'bundle exec appraisal contrib rake spec:sidekiq'
511
514
  sh 'bundle exec appraisal contrib rake spec:sinatra'
515
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
512
516
  sh 'bundle exec appraisal contrib rake spec:sucker_punch'
513
517
  sh 'bundle exec appraisal contrib rake spec:suite'
514
518
  # Contrib specs with old gem versions
@@ -534,72 +538,69 @@ task :ci do
534
538
  sh 'bundle exec rake spec:opentracer'
535
539
  sh 'bundle exec rake spec:opentelemetry'
536
540
  # Benchmarks
537
- sh 'bundle exec rake spec:benchmark'
538
-
539
- if RUBY_PLATFORM != 'java'
540
- # Benchmarks
541
- sh 'bundle exec rake benchmark'
542
- # Contrib minitests
543
- sh 'bundle exec appraisal contrib rake test:grape'
544
- sh 'bundle exec appraisal contrib rake test:sucker_punch'
545
- # Contrib specs
546
- sh 'bundle exec appraisal contrib rake spec:action_pack'
547
- sh 'bundle exec appraisal contrib rake spec:action_view'
548
- sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
549
- sh 'bundle exec appraisal contrib rake spec:active_record'
550
- sh 'bundle exec appraisal contrib rake spec:active_support'
551
- sh 'bundle exec appraisal contrib rake spec:aws'
552
- sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
553
- sh 'bundle exec appraisal contrib rake spec:dalli'
554
- sh 'bundle exec appraisal contrib rake spec:delayed_job'
555
- sh 'bundle exec appraisal contrib rake spec:elasticsearch'
556
- sh 'bundle exec appraisal contrib rake spec:ethon'
557
- sh 'bundle exec appraisal contrib rake spec:excon'
558
- sh 'bundle exec appraisal contrib rake spec:faraday'
559
- sh 'bundle exec appraisal contrib rake spec:grape'
560
- sh 'bundle exec appraisal contrib rake spec:graphql'
561
- sh 'bundle exec appraisal contrib rake spec:grpc'
562
- sh 'bundle exec appraisal contrib rake spec:http'
563
- sh 'bundle exec appraisal contrib rake spec:httprb'
564
- sh 'bundle exec appraisal contrib rake spec:mongodb'
565
- sh 'bundle exec appraisal contrib rake spec:mysql2'
566
- sh 'bundle exec appraisal contrib rake spec:presto'
567
- sh 'bundle exec appraisal contrib rake spec:racecar'
568
- sh 'bundle exec appraisal contrib rake spec:rack'
569
- sh 'bundle exec appraisal contrib rake spec:rake'
570
- sh 'bundle exec appraisal contrib rake spec:redis'
571
- sh 'bundle exec appraisal contrib rake spec:resque'
572
- sh 'bundle exec appraisal contrib rake spec:rest_client'
573
- sh 'bundle exec appraisal contrib rake spec:sequel'
574
- sh 'bundle exec appraisal contrib rake spec:shoryuken'
575
- sh 'bundle exec appraisal contrib rake spec:sidekiq'
576
- sh 'bundle exec appraisal contrib rake spec:sinatra'
577
- sh 'bundle exec appraisal contrib rake spec:sucker_punch'
578
- sh 'bundle exec appraisal contrib rake spec:suite'
579
- # Contrib specs with old gem versions
580
- sh 'bundle exec appraisal contrib-old rake spec:faraday'
581
- # Rails minitests
582
- # We only test Rails 5+ because older versions require Bundler < 2.0
583
- sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
584
- sh 'bundle exec appraisal rails5-postgres rake test:rails'
585
- sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
586
- sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
587
- sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
588
- sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
589
- sh 'bundle exec appraisal rails6-mysql2 rake test:rails'
590
- sh 'bundle exec appraisal rails6-postgres rake test:rails'
591
- sh 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
592
- sh 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
593
- sh 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
594
- sh 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
595
- # Rails specs
596
- sh 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
597
- sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
598
- sh 'bundle exec appraisal rails5-postgres rake spec:rails'
599
- # sh 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
600
- sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
601
- sh 'bundle exec appraisal rails6-postgres rake spec:rails'
602
- end
541
+ sh 'bundle exec rake spec:benchmark' if RUBY_PLATFORM != 'java' # Too slow due to repeated JVM instantiation
542
+ sh 'bundle exec rake benchmark'
543
+ # Contrib minitests
544
+ sh 'bundle exec appraisal contrib rake test:grape'
545
+ sh 'bundle exec appraisal contrib rake test:sucker_punch'
546
+ # Contrib specs
547
+ sh 'bundle exec appraisal contrib rake spec:action_pack'
548
+ sh 'bundle exec appraisal contrib rake spec:action_view'
549
+ sh 'bundle exec appraisal contrib rake spec:active_model_serializers'
550
+ sh 'bundle exec appraisal contrib rake spec:active_record'
551
+ sh 'bundle exec appraisal contrib rake spec:active_support'
552
+ sh 'bundle exec appraisal contrib rake spec:aws'
553
+ sh 'bundle exec appraisal contrib rake spec:concurrent_ruby'
554
+ sh 'bundle exec appraisal contrib rake spec:dalli'
555
+ sh 'bundle exec appraisal contrib rake spec:delayed_job'
556
+ sh 'bundle exec appraisal contrib rake spec:elasticsearch'
557
+ sh 'bundle exec appraisal contrib rake spec:ethon'
558
+ sh 'bundle exec appraisal contrib rake spec:excon'
559
+ sh 'bundle exec appraisal contrib rake spec:faraday'
560
+ sh 'bundle exec appraisal contrib rake spec:grape'
561
+ sh 'bundle exec appraisal contrib rake spec:graphql'
562
+ sh 'bundle exec appraisal contrib rake spec:grpc' if RUBY_PLATFORM != 'java' # protobuf not supported
563
+ sh 'bundle exec appraisal contrib rake spec:http'
564
+ sh 'bundle exec appraisal contrib rake spec:httprb'
565
+ sh 'bundle exec appraisal contrib rake spec:mongodb'
566
+ sh 'bundle exec appraisal contrib rake spec:mysql2' if RUBY_PLATFORM != 'java' # built-in jdbc is used instead
567
+ sh 'bundle exec appraisal contrib rake spec:presto'
568
+ sh 'bundle exec appraisal contrib rake spec:racecar'
569
+ sh 'bundle exec appraisal contrib rake spec:rack'
570
+ sh 'bundle exec appraisal contrib rake spec:rake'
571
+ sh 'bundle exec appraisal contrib rake spec:redis'
572
+ sh 'bundle exec appraisal contrib rake spec:resque'
573
+ sh 'bundle exec appraisal contrib rake spec:rest_client'
574
+ sh 'bundle exec appraisal contrib rake spec:sequel'
575
+ sh 'bundle exec appraisal contrib rake spec:shoryuken'
576
+ sh 'bundle exec appraisal contrib rake spec:sidekiq'
577
+ sh 'bundle exec appraisal contrib rake spec:sinatra'
578
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
579
+ sh 'bundle exec appraisal contrib rake spec:sucker_punch'
580
+ sh 'bundle exec appraisal contrib rake spec:suite'
581
+ # Contrib specs with old gem versions
582
+ sh 'bundle exec appraisal contrib-old rake spec:faraday'
583
+ # Rails minitests
584
+ # We only test Rails 5+ because older versions require Bundler < 2.0
585
+ sh 'bundle exec appraisal rails5-mysql2 rake test:rails'
586
+ sh 'bundle exec appraisal rails5-postgres rake test:rails'
587
+ sh 'bundle exec appraisal rails5-postgres-redis rake spec:railsredis'
588
+ sh 'bundle exec appraisal rails5-postgres-redis-activesupport rake spec:railsredis'
589
+ sh 'bundle exec appraisal rails5-postgres-sidekiq rake spec:railsactivejob'
590
+ sh 'bundle exec appraisal rails5-postgres rake spec:railsdisableenv'
591
+ sh 'bundle exec appraisal rails6-mysql2 rake test:rails'
592
+ sh 'bundle exec appraisal rails6-postgres rake test:rails'
593
+ sh 'bundle exec appraisal rails6-postgres-redis rake spec:railsredis'
594
+ sh 'bundle exec appraisal rails6-postgres-redis-activesupport rake spec:railsredis'
595
+ sh 'bundle exec appraisal rails6-postgres-sidekiq rake spec:railsactivejob'
596
+ sh 'bundle exec appraisal rails6-postgres rake spec:railsdisableenv'
597
+ # Rails specs
598
+ sh 'bundle exec appraisal rails5-mysql2 rake spec:action_cable'
599
+ sh 'bundle exec appraisal rails5-mysql2 rake spec:rails'
600
+ sh 'bundle exec appraisal rails5-postgres rake spec:rails'
601
+ # sh 'bundle exec appraisal rails6-mysql2 rake spec:action_cable' # TODO: Hangs CI jobs... fix and re-enable.
602
+ sh 'bundle exec appraisal rails6-mysql2 rake spec:rails'
603
+ sh 'bundle exec appraisal rails6-postgres rake spec:rails'
603
604
  elsif Gem::Version.new('2.6.0') <= Gem::Version.new(RUBY_VERSION) \
604
605
  && Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7.0')
605
606
  # Main library
@@ -649,6 +650,7 @@ task :ci do
649
650
  sh 'bundle exec appraisal contrib rake spec:shoryuken'
650
651
  sh 'bundle exec appraisal contrib rake spec:sidekiq'
651
652
  sh 'bundle exec appraisal contrib rake spec:sinatra'
653
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
652
654
  sh 'bundle exec appraisal contrib rake spec:sucker_punch'
653
655
  sh 'bundle exec appraisal contrib rake spec:suite'
654
656
  # Contrib specs with old gem versions
@@ -723,6 +725,7 @@ task :ci do
723
725
  sh 'bundle exec appraisal contrib rake spec:shoryuken'
724
726
  sh 'bundle exec appraisal contrib rake spec:sidekiq'
725
727
  sh 'bundle exec appraisal contrib rake spec:sinatra'
728
+ sh 'bundle exec appraisal contrib rake spec:sneakers'
726
729
  sh 'bundle exec appraisal contrib rake spec:sucker_punch'
727
730
  sh 'bundle exec appraisal contrib rake spec:suite'
728
731
  # Contrib specs with old gem versions
@@ -59,6 +59,7 @@ To contribute, check out the [contribution guidelines][contribution docs] and [d
59
59
  - [Sequel](#sequel)
60
60
  - [Sidekiq](#sidekiq)
61
61
  - [Sinatra](#sinatra)
62
+ - [Sneakers](#sneakers)
62
63
  - [Sucker Punch](#sucker-punch)
63
64
  - [Advanced configuration](#advanced-configuration)
64
65
  - [Tracer settings](#tracer-settings)
@@ -93,7 +94,7 @@ To contribute, check out the [contribution guidelines][contribution docs] and [d
93
94
  | | | 2.0 | Full | Latest |
94
95
  | | | 1.9.3 | Maintenance (until August 6th, 2020) | < 0.27.0 |
95
96
  | | | 1.9.1 | Maintenance (until August 6th, 2020) | < 0.27.0 |
96
- | JRuby | http://jruby.org/ | 9.2.0.0 | Alpha | Latest |
97
+ | JRuby | https://www.jruby.org | 9.2 | Full | Latest |
97
98
 
98
99
  **Supported web servers**:
99
100
 
@@ -326,43 +327,44 @@ end
326
327
 
327
328
  For a list of available integrations, and their configuration options, please refer to the following:
328
329
 
329
- | Name | Key | Versions Supported | How to configure | Gem source |
330
- | ------------------------ | -------------------------- | ------------------------ | ----------------------------------- | ------------------------------------------------------------------------------ |
331
- | Action Cable | `action_cable` | `>= 5.0` | *[Link](#action-cable)* | *[Link](https://github.com/rails/rails/tree/master/actioncable)* |
332
- | Action View | `action_view` | `>= 3.0` | *[Link](#action-view)* | *[Link](https://github.com/rails/rails/tree/master/actionview)* |
333
- | Active Model Serializers | `active_model_serializers` | `>= 0.9` | *[Link](#active-model-serializers)* | *[Link](https://github.com/rails-api/active_model_serializers)* |
334
- | Action Pack | `action_pack` | `>= 3.0` | *[Link](#action-pack)* | *[Link](https://github.com/rails/rails/tree/master/actionpack)* |
335
- | Active Record | `active_record` | `>= 3.0` | *[Link](#active-record)* | *[Link](https://github.com/rails/rails/tree/master/activerecord)* |
336
- | Active Support | `active_support` | `>= 3.0` | *[Link](#active-support)* | *[Link](https://github.com/rails/rails/tree/master/activesupport)* |
337
- | AWS | `aws` | `>= 2.0` | *[Link](#aws)* | *[Link](https://github.com/aws/aws-sdk-ruby)* |
338
- | Concurrent Ruby | `concurrent_ruby` | `>= 0.9` | *[Link](#concurrent-ruby)* | *[Link](https://github.com/ruby-concurrency/concurrent-ruby)* |
339
- | Dalli | `dalli` | `>= 2.0` | *[Link](#dalli)* | *[Link](https://github.com/petergoldstein/dalli)* |
340
- | DelayedJob | `delayed_job` | `>= 4.1` | *[Link](#delayedjob)* | *[Link](https://github.com/collectiveidea/delayed_job)* |
341
- | Elasticsearch | `elasticsearch` | `>= 1.0` | *[Link](#elasticsearch)* | *[Link](https://github.com/elastic/elasticsearch-ruby)* |
342
- | Ethon | `ethon` | `>= 0.11` | *[Link](#ethon)* | *[Link](https://github.com/typhoeus/ethon)* |
343
- | Excon | `excon` | `>= 0.50` | *[Link](#excon)* | *[Link](https://github.com/excon/excon)* |
344
- | Faraday | `faraday` | `>= 0.14` | *[Link](#faraday)* | *[Link](https://github.com/lostisland/faraday)* |
345
- | Grape | `grape` | `>= 1.0` | *[Link](#grape)* | *[Link](https://github.com/ruby-grape/grape)* |
346
- | GraphQL | `graphql` | `>= 1.7.9` | *[Link](#graphql)* | *[Link](https://github.com/rmosolgo/graphql-ruby)* |
347
- | gRPC | `grpc` | `>= 1.7` | *[Link](#grpc)* | *[Link](https://github.com/grpc/grpc/tree/master/src/rubyc)* |
348
- | http.rb | `httprb` | `>= 2.0` | *[Link](#http.rb)* | *[Link](https://github.com/httprb/http)* |
349
- | Kafka | `ruby-kafka` | `>= 0.7.10` | *[Link](#kafka)* | |
350
- | MongoDB | `mongo` | `>= 2.1` | *[Link](#mongodb)* | *[Link](https://github.com/mongodb/mongo-ruby-driver)* |
351
- | MySQL2 | `mysql2` | `>= 0.3.21` | *[Link](#mysql2)* | *[Link](https://github.com/brianmario/mysql2)* |
352
- | Net/HTTP | `http` | *(Any supported Ruby)* | *[Link](#nethttp)* | *[Link](https://ruby-doc.org/stdlib-2.4.0/libdoc/net/http/rdoc/Net/HTTP.html)* |
353
- | Presto | `presto` | `>= 0.5.14` | *[Link](#presto)* | *[Link](https://github.com/treasure-data/presto-client-ruby)* |
354
- | Racecar | `racecar` | `>= 0.3.5` | *[Link](#racecar)* | *[Link](https://github.com/zendesk/racecar)* |
355
- | Rack | `rack` | `>= 1.1` | *[Link](#rack)* | *[Link](https://github.com/rack/rack)* |
356
- | Rails | `rails` | `>= 3.0` | *[Link](#rails)* | *[Link](https://github.com/rails/rails)* |
357
- | Rake | `rake` | `>= 12.0` | *[Link](#rake)* | *[Link](https://github.com/ruby/rake)* |
358
- | Redis | `redis` | `>= 3.2` | *[Link](#redis)* | *[Link](https://github.com/redis/redis-rb)* |
359
- | Resque | `resque` | `>= 1.0, < 2.0` | *[Link](#resque)* | *[Link](https://github.com/resque/resque)* |
360
- | Rest Client | `rest-client` | `>= 1.8` | *[Link](#rest-client)* | *[Link](https://github.com/rest-client/rest-client)* |
361
- | Sequel | `sequel` | `>= 3.41` | *[Link](#sequel)* | *[Link](https://github.com/jeremyevans/sequel)* |
362
- | Shoryuken | `shoryuken` | `>= 3.2` | *[Link](#shoryuken)* | *[Link](https://github.com/phstc/shoryuken)* |
363
- | Sidekiq | `sidekiq` | `>= 3.5.4` | *[Link](#sidekiq)* | *[Link](https://github.com/mperham/sidekiq)* |
364
- | Sinatra | `sinatra` | `>= 1.4` | *[Link](#sinatra)* | *[Link](https://github.com/sinatra/sinatra)* |
365
- | Sucker Punch | `sucker_punch` | `>= 2.0` | *[Link](#sucker-punch)* | *[Link](https://github.com/brandonhilkert/sucker_punch)* |
330
+ | Name | Key | Versions Supported: MRI | Versions Supported: JRuby | How to configure | Gem source |
331
+ | ------------------------ | -------------------------- | ------------------------ | --------------------------| ----------------------------------- | ------------------------------------------------------------------------------ |
332
+ | Action Cable | `action_cable` | `>= 5.0` | `>= 5.0` | *[Link](#action-cable)* | *[Link](https://github.com/rails/rails/tree/master/actioncable)* |
333
+ | Action View | `action_view` | `>= 3.0` | `>= 3.0` | *[Link](#action-view)* | *[Link](https://github.com/rails/rails/tree/master/actionview)* |
334
+ | Active Model Serializers | `active_model_serializers` | `>= 0.9` | `>= 0.9` | *[Link](#active-model-serializers)* | *[Link](https://github.com/rails-api/active_model_serializers)* |
335
+ | Action Pack | `action_pack` | `>= 3.0` | `>= 3.0` | *[Link](#action-pack)* | *[Link](https://github.com/rails/rails/tree/master/actionpack)* |
336
+ | Active Record | `active_record` | `>= 3.0` | `>= 3.0` | *[Link](#active-record)* | *[Link](https://github.com/rails/rails/tree/master/activerecord)* |
337
+ | Active Support | `active_support` | `>= 3.0` | `>= 3.0` | *[Link](#active-support)* | *[Link](https://github.com/rails/rails/tree/master/activesupport)* |
338
+ | AWS | `aws` | `>= 2.0` | `>= 2.0` | *[Link](#aws)* | *[Link](https://github.com/aws/aws-sdk-ruby)* |
339
+ | Concurrent Ruby | `concurrent_ruby` | `>= 0.9` | `>= 0.9` | *[Link](#concurrent-ruby)* | *[Link](https://github.com/ruby-concurrency/concurrent-ruby)* |
340
+ | Dalli | `dalli` | `>= 2.0` | `>= 2.0` | *[Link](#dalli)* | *[Link](https://github.com/petergoldstein/dalli)* |
341
+ | DelayedJob | `delayed_job` | `>= 4.1` | `>= 4.1` | *[Link](#delayedjob)* | *[Link](https://github.com/collectiveidea/delayed_job)* |
342
+ | Elasticsearch | `elasticsearch` | `>= 1.0` | `>= 1.0` | *[Link](#elasticsearch)* | *[Link](https://github.com/elastic/elasticsearch-ruby)* |
343
+ | Ethon | `ethon` | `>= 0.11` | `>= 0.11` | *[Link](#ethon)* | *[Link](https://github.com/typhoeus/ethon)* |
344
+ | Excon | `excon` | `>= 0.50` | `>= 0.50` | *[Link](#excon)* | *[Link](https://github.com/excon/excon)* |
345
+ | Faraday | `faraday` | `>= 0.14` | `>= 0.14` | *[Link](#faraday)* | *[Link](https://github.com/lostisland/faraday)* |
346
+ | Grape | `grape` | `>= 1.0` | `>= 1.0` | *[Link](#grape)* | *[Link](https://github.com/ruby-grape/grape)* |
347
+ | GraphQL | `graphql` | `>= 1.7.9` | `>= 1.7.9` | *[Link](#graphql)* | *[Link](https://github.com/rmosolgo/graphql-ruby)* |
348
+ | gRPC | `grpc` | `>= 1.7` | *gem not available* | *[Link](#grpc)* | *[Link](https://github.com/grpc/grpc/tree/master/src/rubyc)* |
349
+ | http.rb | `httprb` | `>= 2.0` | `>= 2.0` | *[Link](#http.rb)* | *[Link](https://github.com/httprb/http)* |
350
+ | Kafka | `ruby-kafka` | `>= 0.7.10` | `>= 0.7.10` | *[Link](#kafka)* | *[Link](https://github.com/zendesk/ruby-kafka)* |
351
+ | MongoDB | `mongo` | `>= 2.1` | `>= 2.1` | *[Link](#mongodb)* | *[Link](https://github.com/mongodb/mongo-ruby-driver)* |
352
+ | MySQL2 | `mysql2` | `>= 0.3.21` | *gem not available* | *[Link](#mysql2)* | *[Link](https://github.com/brianmario/mysql2)* |
353
+ | Net/HTTP | `http` | *(Any supported Ruby)* | *(Any supported Ruby)* | *[Link](#nethttp)* | *[Link](https://ruby-doc.org/stdlib-2.4.0/libdoc/net/http/rdoc/Net/HTTP.html)* |
354
+ | Presto | `presto` | `>= 0.5.14` | `>= 0.5.14` | *[Link](#presto)* | *[Link](https://github.com/treasure-data/presto-client-ruby)* |
355
+ | Racecar | `racecar` | `>= 0.3.5` | `>= 0.3.5` | *[Link](#racecar)* | *[Link](https://github.com/zendesk/racecar)* |
356
+ | Rack | `rack` | `>= 1.1` | `>= 1.1` | *[Link](#rack)* | *[Link](https://github.com/rack/rack)* |
357
+ | Rails | `rails` | `>= 3.0` | `>= 3.0` | *[Link](#rails)* | *[Link](https://github.com/rails/rails)* |
358
+ | Rake | `rake` | `>= 12.0` | `>= 12.0` | *[Link](#rake)* | *[Link](https://github.com/ruby/rake)* |
359
+ | Redis | `redis` | `>= 3.2` | `>= 3.2` | *[Link](#redis)* | *[Link](https://github.com/redis/redis-rb)* |
360
+ | Resque | `resque` | `>= 1.0, < 2.0` | `>= 1.0, < 2.0` | *[Link](#resque)* | *[Link](https://github.com/resque/resque)* |
361
+ | Rest Client | `rest-client` | `>= 1.8` | `>= 1.8` | *[Link](#rest-client)* | *[Link](https://github.com/rest-client/rest-client)* |
362
+ | Sequel | `sequel` | `>= 3.41` | `>= 3.41` | *[Link](#sequel)* | *[Link](https://github.com/jeremyevans/sequel)* |
363
+ | Shoryuken | `shoryuken` | `>= 3.2` | `>= 3.2` | *[Link](#shoryuken)* | *[Link](https://github.com/phstc/shoryuken)* |
364
+ | Sidekiq | `sidekiq` | `>= 3.5.4` | `>= 3.5.4` | *[Link](#sidekiq)* | *[Link](https://github.com/mperham/sidekiq)* |
365
+ | Sinatra | `sinatra` | `>= 1.4` | `>= 1.4` | *[Link](#sinatra)* | *[Link](https://github.com/sinatra/sinatra)* |
366
+ | Sneakers | `sneakers` | `>= 2.12.0` | `>= 2.12.0` | *[Link](#sneakers)* | *[Link](https://github.com/jondot/sneakers)* |
367
+ | Sucker Punch | `sucker_punch` | `>= 2.0` | `>= 2.0` | *[Link](#sucker-punch)* | *[Link](https://github.com/brandonhilkert/sucker_punch)* |
366
368
 
367
369
  ### Action Cable
368
370
 
@@ -473,7 +475,7 @@ Where `options` is an optional `Hash` that accepts the following parameters:
473
475
  | Key | Description | Default |
474
476
  | ---| --- | --- |
475
477
  | `analytics_enabled` | Enable analytics for spans produced by this integration. `true` for on, `nil` to defer to the global setting, `false` for off. | `false` |
476
- | `orm_service_name` | Service name used for the Ruby ORM portion of `active_record` instrumentation. Overrides service name for ORM spans if explicitly set, which otherwise inherit their service from their parent. | `'active_record'` |
478
+ | `orm_service_name` | Service name used for the mapping portion of query results to ActiveRecord objects. Inherits service name from parent by default. | _parent.service_name_ (e.g. `'mysql2'`) |
477
479
  | `service_name` | Service name used for database portion of `active_record` instrumentation. | Name of database adapter (e.g. `'mysql2'`) |
478
480
 
479
481
  **Configuring trace settings per database**
@@ -1233,14 +1235,14 @@ Where `options` is an optional `Hash` that accepts the following parameters:
1233
1235
 
1234
1236
  **Supported versions**
1235
1237
 
1236
- | Ruby Versions | Supported Rails Versions |
1237
- | ------------- | ------------------------ |
1238
- | 2.0 | 3.0 - 3.2 |
1239
- | 2.1 | 3.0 - 4.2 |
1240
- | 2.2 - 2.3 | 3.0 - 5.2 |
1241
- | 2.4 | 4.2.8 - 5.2 |
1242
- | 2.5 | 4.2.8 - 6.0 |
1243
- | 2.6 - 2.7 | 5.0 - 6.0 |
1238
+ | MRI Versions | JRuby Versions | Rails Versions |
1239
+ | ------------- | -------------- | -------------- |
1240
+ | 2.0 | | 3.0 - 3.2 |
1241
+ | 2.1 | | 3.0 - 4.2 |
1242
+ | 2.2 - 2.3 | | 3.0 - 5.2 |
1243
+ | 2.4 | | 4.2.8 - 5.2 |
1244
+ | 2.5 | | 4.2.8 - 6.0 |
1245
+ | 2.6 - 2.7 | 9.2 | 5.0 - 6.0 |
1244
1246
 
1245
1247
  ### Rake
1246
1248
 
@@ -1585,6 +1587,29 @@ Ensure you register `Datadog::Contrib::Sinatra::Tracer` as a middleware before y
1585
1587
  | `resource_script_names` | Prepend resource names with script name | `false` |
1586
1588
  | `service_name` | Service name used for `sinatra` instrumentation | `'sinatra'` |
1587
1589
 
1590
+ ### Sneakers
1591
+
1592
+ The Sneakers integration is a server-side middleware which will trace job executions.
1593
+
1594
+ You can enable it through `Datadog.configure`:
1595
+
1596
+ ```ruby
1597
+ require 'ddtrace'
1598
+
1599
+ Datadog.configure do |c|
1600
+ c.use :sneakers, options
1601
+ end
1602
+ ```
1603
+
1604
+ Where `options` is an optional `Hash` that accepts the following parameters:
1605
+
1606
+ | Key | Description | Default |
1607
+ | --- | ----------- | ------- |
1608
+ | `analytics_enabled` | Enable analytics for spans produced by this integration. `true` for on, `nil` to defer to global setting, `false` for off. | `false` |
1609
+ | `enabled` | Defines whether Sneakers should be traced. Useful for temporarily disabling tracing. `true` or `false` | `true` |
1610
+ | `service_name` | Service name used for `sneakers` instrumentation | `'sneakers'` |
1611
+ | `tag_body` | Enable tagging of job message. `true` for on, `false` for off. | `false` |
1612
+
1588
1613
  ### Sucker Punch
1589
1614
 
1590
1615
  The `sucker_punch` integration traces all scheduled jobs:
@@ -1633,13 +1658,14 @@ end
1633
1658
 
1634
1659
  Available options are:
1635
1660
 
1636
- - `enabled`: defines if the `tracer` is enabled or not. If set to `false` instrumentation will still run, but no spans are sent to the trace agent.
1661
+ - `enabled`: defines if the `tracer` is enabled or not. If set to `false` instrumentation will still run, but no spans are sent to the trace agent. Can be configured through the `DD_TRACE_ENABLED` environment variable. Defaults to `true`.
1637
1662
  - `hostname`: set the hostname of the trace agent.
1638
1663
  - `instance`: set to a custom `Datadog::Tracer` instance. If provided, other trace settings are ignored (you must configure it manually.)
1639
1664
  - `partial_flush.enabled`: set to `true` to enable partial trace flushing (for long running traces.) Disabled by default. *Experimental.*
1640
1665
  - `port`: set the port the trace agent is listening on.
1641
1666
  - `sampler`: set to a custom `Datadog::Sampler` instance. If provided, the tracer will use this sampler to determine sampling behavior.
1642
1667
  - `diagnostics.startup_logs.enabled`: Startup configuration and diagnostic log. Defaults to `true`. Can be configured through the `DD_TRACE_STARTUP_LOGS` environment variable.
1668
+ - `diagnostics.debug`: set to true to enable debug logging. Can be configured through the `DD_TRACE_DEBUG` environment variable. Defaults to `false`.
1643
1669
 
1644
1670
  #### Custom logging
1645
1671
 
@@ -1687,6 +1713,15 @@ This enables you to set this value on a per application basis, so you can have f
1687
1713
 
1688
1714
  Tags can also be set directly on individual spans, which will supersede any conflicting tags defined at the application level.
1689
1715
 
1716
+ ### Environment variables
1717
+
1718
+ Other Environment Variables:
1719
+
1720
+ - `DD_TRACE_AGENT_URL`: Sets the URL endpoint where traces are sent. Has priority over `DD_AGENT_HOST` and `DD_TRACE_AGENT_PORT` if set. e.g. `DD_TRACE_AGENT_URL=http://localhost:8126`.
1721
+ - `DD_TRACE_<INTEGRATION>_ENABLED`: Enables or disables an **activated** integration. Defaults to `true`.. e.g. `DD_TRACE_RAILS_ENABLED=false`. This option has no effects on integrations that have not been explicitly activated (e.g. `Datadog.configure{ |c| c.use :integration }`).on code. This environment variable can only be used to disable an integration.
1722
+ - `DD_TRACE_<INTEGRATION>_ANALYTICS_ENABLED`: Enables or disable App Analytics for a specific integration. Valid values are: true or false (default). e.g. `DD_TRACE_ACTION_CABLE_ANALYTICS_ENABLED=true`.
1723
+ - `DD_TRACE_<INTEGRATION>_ANALYTICS_SAMPLE_RATE`: Sets the App Analytics sampling rate for a specific integration. A floating number between 0.0 and 1.0 (default). e.g. `DD_TRACE_ACTION_CABLE_ANALYTICS_SAMPLE_RATE=0.5`.
1724
+
1690
1725
  ### Sampling
1691
1726
 
1692
1727
  `ddtrace` can perform trace sampling. While the trace agent already samples traces to reduce bandwidth usage, client sampling reduces the performance overhead.
@@ -2179,13 +2214,13 @@ end
2179
2214
 
2180
2215
  See the [Dogstatsd documentation](https://www.rubydoc.info/github/DataDog/dogstatsd-ruby/master/frames) for more details about configuring `Datadog::Statsd`.
2181
2216
 
2182
- The stats sent will include:
2217
+ The stats are VM specific and will include:
2183
2218
 
2184
2219
  | Name | Type | Description |
2185
2220
  | -------------------------- | ------- | -------------------------------------------------------- |
2186
2221
  | `runtime.ruby.class_count` | `gauge` | Number of classes in memory space. |
2187
2222
  | `runtime.ruby.thread_count` | `gauge` | Number of threads. |
2188
- | `runtime.ruby.gc.*`. | `gauge` | Garbage collection statistics (one per value in GC.stat) |
2223
+ | `runtime.ruby.gc.*`. | `gauge` | Garbage collection statistics: collected from `GC.stat`. |
2189
2224
 
2190
2225
  In addition, all metrics include the following tags:
2191
2226