ddtrace 1.4.2 → 1.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (870) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +986 -2
  3. data/LICENSE-3rdparty.csv +2 -0
  4. data/README.md +10 -12
  5. data/ext/ddtrace_profiling_loader/ddtrace_profiling_loader.c +9 -2
  6. data/ext/ddtrace_profiling_loader/extconf.rb +21 -3
  7. data/ext/ddtrace_profiling_native_extension/NativeExtensionDesign.md +48 -12
  8. data/ext/ddtrace_profiling_native_extension/clock_id.h +1 -3
  9. data/ext/ddtrace_profiling_native_extension/clock_id_from_pthread.c +6 -23
  10. data/ext/ddtrace_profiling_native_extension/clock_id_noop.c +0 -1
  11. data/ext/ddtrace_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +719 -129
  12. data/ext/ddtrace_profiling_native_extension/collectors_dynamic_sampling_rate.c +150 -0
  13. data/ext/ddtrace_profiling_native_extension/collectors_dynamic_sampling_rate.h +18 -0
  14. data/ext/ddtrace_profiling_native_extension/collectors_gc_profiling_helper.c +156 -0
  15. data/ext/ddtrace_profiling_native_extension/collectors_gc_profiling_helper.h +5 -0
  16. data/ext/ddtrace_profiling_native_extension/collectors_idle_sampling_helper.c +244 -0
  17. data/ext/ddtrace_profiling_native_extension/collectors_idle_sampling_helper.h +3 -0
  18. data/ext/ddtrace_profiling_native_extension/collectors_stack.c +184 -94
  19. data/ext/ddtrace_profiling_native_extension/collectors_stack.h +20 -2
  20. data/ext/ddtrace_profiling_native_extension/collectors_thread_context.c +1301 -0
  21. data/ext/ddtrace_profiling_native_extension/collectors_thread_context.h +15 -0
  22. data/ext/ddtrace_profiling_native_extension/extconf.rb +103 -28
  23. data/ext/ddtrace_profiling_native_extension/heap_recorder.c +970 -0
  24. data/ext/ddtrace_profiling_native_extension/heap_recorder.h +155 -0
  25. data/ext/ddtrace_profiling_native_extension/helpers.h +7 -0
  26. data/ext/ddtrace_profiling_native_extension/http_transport.c +133 -88
  27. data/ext/ddtrace_profiling_native_extension/libdatadog_helpers.c +62 -0
  28. data/ext/ddtrace_profiling_native_extension/libdatadog_helpers.h +32 -4
  29. data/ext/ddtrace_profiling_native_extension/native_extension_helpers.rb +55 -26
  30. data/ext/ddtrace_profiling_native_extension/pid_controller.c +57 -0
  31. data/ext/ddtrace_profiling_native_extension/pid_controller.h +45 -0
  32. data/ext/ddtrace_profiling_native_extension/private_vm_api_access.c +317 -131
  33. data/ext/ddtrace_profiling_native_extension/private_vm_api_access.h +25 -1
  34. data/ext/ddtrace_profiling_native_extension/profiling.c +219 -4
  35. data/ext/ddtrace_profiling_native_extension/ruby_helpers.c +233 -1
  36. data/ext/ddtrace_profiling_native_extension/ruby_helpers.h +60 -8
  37. data/ext/ddtrace_profiling_native_extension/setup_signal_handler.c +115 -0
  38. data/ext/ddtrace_profiling_native_extension/setup_signal_handler.h +11 -0
  39. data/ext/ddtrace_profiling_native_extension/stack_recorder.c +585 -66
  40. data/ext/ddtrace_profiling_native_extension/stack_recorder.h +19 -30
  41. data/ext/ddtrace_profiling_native_extension/time_helpers.c +53 -0
  42. data/ext/ddtrace_profiling_native_extension/time_helpers.h +24 -0
  43. data/lib/datadog/appsec/assets/blocked.html +98 -3
  44. data/lib/datadog/appsec/assets/blocked.json +1 -0
  45. data/lib/datadog/appsec/assets/blocked.text +5 -0
  46. data/lib/datadog/appsec/assets/waf_rules/processors.json +92 -0
  47. data/lib/datadog/appsec/assets/waf_rules/recommended.json +2861 -796
  48. data/lib/datadog/appsec/assets/waf_rules/scanners.json +114 -0
  49. data/lib/datadog/appsec/assets/waf_rules/strict.json +459 -122
  50. data/lib/datadog/appsec/assets.rb +10 -4
  51. data/lib/datadog/appsec/autoload.rb +4 -11
  52. data/lib/datadog/appsec/component.rb +94 -0
  53. data/lib/datadog/appsec/configuration/settings.rb +170 -162
  54. data/lib/datadog/appsec/configuration.rb +1 -70
  55. data/lib/datadog/appsec/contrib/auto_instrument.rb +3 -5
  56. data/lib/datadog/appsec/contrib/devise/event.rb +57 -0
  57. data/lib/datadog/appsec/contrib/devise/ext.rb +13 -0
  58. data/lib/datadog/appsec/contrib/devise/integration.rb +42 -0
  59. data/lib/datadog/appsec/contrib/devise/patcher/authenticatable_patch.rb +76 -0
  60. data/lib/datadog/appsec/contrib/devise/patcher/registration_controller_patch.rb +54 -0
  61. data/lib/datadog/appsec/contrib/devise/patcher.rb +45 -0
  62. data/lib/datadog/appsec/contrib/devise/resource.rb +35 -0
  63. data/lib/datadog/appsec/contrib/devise/tracking.rb +49 -0
  64. data/lib/datadog/appsec/contrib/integration.rb +1 -1
  65. data/lib/datadog/appsec/contrib/patcher.rb +1 -1
  66. data/lib/datadog/appsec/contrib/rack/ext.rb +1 -3
  67. data/lib/datadog/appsec/contrib/rack/gateway/request.rb +104 -0
  68. data/lib/datadog/appsec/contrib/rack/gateway/response.rb +30 -0
  69. data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +112 -121
  70. data/lib/datadog/appsec/contrib/rack/integration.rb +0 -7
  71. data/lib/datadog/appsec/contrib/rack/patcher.rb +3 -1
  72. data/lib/datadog/appsec/contrib/rack/reactive/request.rb +33 -39
  73. data/lib/datadog/appsec/contrib/rack/reactive/request_body.rb +19 -23
  74. data/lib/datadog/appsec/contrib/rack/reactive/response.rb +25 -23
  75. data/lib/datadog/appsec/contrib/rack/request_body_middleware.rb +11 -8
  76. data/lib/datadog/appsec/contrib/rack/request_middleware.rb +122 -41
  77. data/lib/datadog/appsec/contrib/rails/ext.rb +2 -4
  78. data/lib/datadog/appsec/contrib/rails/framework.rb +2 -16
  79. data/lib/datadog/appsec/contrib/rails/gateway/request.rb +67 -0
  80. data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +40 -52
  81. data/lib/datadog/appsec/contrib/rails/integration.rb +1 -8
  82. data/lib/datadog/appsec/contrib/rails/patcher.rb +23 -20
  83. data/lib/datadog/appsec/contrib/rails/reactive/action.rb +21 -23
  84. data/lib/datadog/appsec/contrib/rails/request.rb +4 -1
  85. data/lib/datadog/appsec/contrib/rails/request_middleware.rb +1 -1
  86. data/lib/datadog/appsec/contrib/sinatra/ext.rb +2 -3
  87. data/lib/datadog/appsec/contrib/sinatra/framework.rb +2 -16
  88. data/lib/datadog/appsec/contrib/sinatra/gateway/request.rb +17 -0
  89. data/lib/datadog/appsec/contrib/sinatra/gateway/route_params.rb +23 -0
  90. data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +78 -87
  91. data/lib/datadog/appsec/contrib/sinatra/integration.rb +0 -7
  92. data/lib/datadog/appsec/contrib/sinatra/patcher.rb +33 -15
  93. data/lib/datadog/appsec/contrib/sinatra/reactive/routed.rb +19 -21
  94. data/lib/datadog/appsec/contrib/sinatra/request_middleware.rb +1 -1
  95. data/lib/datadog/appsec/event.rb +98 -50
  96. data/lib/datadog/appsec/ext.rb +10 -0
  97. data/lib/datadog/appsec/extensions.rb +2 -105
  98. data/lib/datadog/appsec/instrumentation/gateway/argument.rb +22 -0
  99. data/lib/datadog/appsec/instrumentation/gateway.rb +26 -6
  100. data/lib/datadog/appsec/instrumentation.rb +9 -0
  101. data/lib/datadog/appsec/monitor/gateway/watcher.rb +67 -0
  102. data/lib/datadog/appsec/monitor/reactive/set_user.rb +58 -0
  103. data/lib/datadog/appsec/monitor.rb +11 -0
  104. data/lib/datadog/appsec/processor/actions.rb +49 -0
  105. data/lib/datadog/appsec/processor/rule_loader.rb +123 -0
  106. data/lib/datadog/appsec/processor/rule_merger.rb +152 -0
  107. data/lib/datadog/appsec/processor.rb +68 -61
  108. data/lib/datadog/appsec/rate_limiter.rb +1 -3
  109. data/lib/datadog/appsec/reactive/address_hash.rb +6 -2
  110. data/lib/datadog/appsec/reactive/engine.rb +10 -7
  111. data/lib/datadog/appsec/reactive/operation.rb +19 -2
  112. data/lib/datadog/appsec/reactive/subscriber.rb +2 -1
  113. data/lib/datadog/appsec/remote.rb +129 -0
  114. data/lib/datadog/appsec/response.rb +151 -0
  115. data/lib/datadog/appsec/sample_rate.rb +21 -0
  116. data/lib/datadog/appsec/scope.rb +61 -0
  117. data/lib/datadog/appsec/utils/http/media_range.rb +199 -0
  118. data/lib/datadog/appsec/utils/http/media_type.rb +85 -0
  119. data/lib/datadog/appsec/utils/http.rb +11 -0
  120. data/lib/datadog/appsec/utils.rb +9 -0
  121. data/lib/datadog/appsec.rb +41 -4
  122. data/lib/datadog/core/backport.rb +51 -0
  123. data/lib/datadog/core/buffer/cruby.rb +1 -1
  124. data/lib/datadog/core/buffer/random.rb +1 -1
  125. data/lib/datadog/core/buffer/thread_safe.rb +1 -1
  126. data/lib/datadog/core/chunker.rb +1 -1
  127. data/lib/datadog/core/configuration/agent_settings_resolver.rb +96 -56
  128. data/lib/datadog/core/configuration/base.rb +7 -16
  129. data/lib/datadog/core/configuration/components.rb +40 -296
  130. data/lib/datadog/core/configuration/ext.rb +47 -0
  131. data/lib/datadog/core/configuration/option.rb +270 -22
  132. data/lib/datadog/core/configuration/option_definition.rb +81 -31
  133. data/lib/datadog/core/configuration/options.rb +26 -16
  134. data/lib/datadog/core/configuration/settings.rb +419 -305
  135. data/lib/datadog/core/configuration.rb +10 -6
  136. data/lib/datadog/core/diagnostics/environment_logger.rb +129 -230
  137. data/lib/datadog/core/diagnostics/health.rb +4 -22
  138. data/lib/datadog/core/encoding.rb +0 -4
  139. data/lib/datadog/core/environment/cgroup.rb +0 -4
  140. data/lib/datadog/core/environment/class_count.rb +1 -1
  141. data/lib/datadog/core/environment/container.rb +0 -4
  142. data/lib/datadog/core/environment/execution.rb +103 -0
  143. data/lib/datadog/core/environment/ext.rb +12 -12
  144. data/lib/datadog/core/environment/gc.rb +1 -1
  145. data/lib/datadog/core/environment/identity.rb +57 -1
  146. data/lib/datadog/core/environment/platform.rb +0 -2
  147. data/lib/datadog/core/environment/socket.rb +1 -1
  148. data/lib/datadog/core/environment/thread_count.rb +1 -1
  149. data/lib/datadog/core/environment/variable_helpers.rb +29 -44
  150. data/lib/datadog/core/environment/vm_cache.rb +18 -1
  151. data/lib/datadog/core/environment/yjit.rb +58 -0
  152. data/lib/datadog/core/error.rb +1 -2
  153. data/lib/datadog/core/extensions.rb +1 -1
  154. data/lib/datadog/core/git/ext.rb +25 -23
  155. data/lib/datadog/core/header_collection.rb +43 -0
  156. data/lib/datadog/core/logger.rb +0 -2
  157. data/lib/datadog/core/logging/ext.rb +3 -1
  158. data/lib/datadog/core/metrics/client.rb +3 -4
  159. data/lib/datadog/core/metrics/ext.rb +6 -8
  160. data/lib/datadog/core/metrics/helpers.rb +1 -1
  161. data/lib/datadog/core/metrics/logging.rb +0 -2
  162. data/lib/datadog/core/metrics/metric.rb +1 -1
  163. data/lib/datadog/core/metrics/options.rb +0 -2
  164. data/lib/datadog/core/pin.rb +0 -2
  165. data/lib/datadog/core/remote/client/capabilities.rb +62 -0
  166. data/lib/datadog/core/remote/client.rb +232 -0
  167. data/lib/datadog/core/remote/component.rb +149 -0
  168. data/lib/datadog/core/remote/configuration/content.rb +111 -0
  169. data/lib/datadog/core/remote/configuration/digest.rb +62 -0
  170. data/lib/datadog/core/remote/configuration/path.rb +90 -0
  171. data/lib/datadog/core/remote/configuration/repository.rb +294 -0
  172. data/lib/datadog/core/remote/configuration/target.rb +74 -0
  173. data/lib/datadog/core/remote/configuration.rb +18 -0
  174. data/lib/datadog/core/remote/dispatcher.rb +59 -0
  175. data/lib/datadog/core/remote/ext.rb +12 -0
  176. data/lib/datadog/core/remote/negotiation.rb +70 -0
  177. data/lib/datadog/core/remote/transport/config.rb +60 -0
  178. data/lib/datadog/core/remote/transport/http/api/instance.rb +39 -0
  179. data/lib/datadog/core/remote/transport/http/api/spec.rb +21 -0
  180. data/lib/datadog/core/remote/transport/http/api.rb +58 -0
  181. data/lib/datadog/core/remote/transport/http/builder.rb +219 -0
  182. data/lib/datadog/core/remote/transport/http/client.rb +48 -0
  183. data/lib/datadog/core/remote/transport/http/config.rb +280 -0
  184. data/lib/datadog/core/remote/transport/http/negotiation.rb +146 -0
  185. data/lib/datadog/core/remote/transport/http.rb +179 -0
  186. data/lib/datadog/core/remote/transport/negotiation.rb +62 -0
  187. data/lib/datadog/core/remote/worker.rb +99 -0
  188. data/lib/datadog/core/remote.rb +24 -0
  189. data/lib/datadog/core/runtime/ext.rb +21 -11
  190. data/lib/datadog/core/runtime/metrics.rb +64 -7
  191. data/lib/datadog/core/telemetry/client.rb +12 -4
  192. data/lib/datadog/core/telemetry/collector.rb +34 -18
  193. data/lib/datadog/core/telemetry/emitter.rb +4 -4
  194. data/lib/datadog/core/telemetry/event.rb +20 -8
  195. data/lib/datadog/core/telemetry/ext.rb +6 -2
  196. data/lib/datadog/core/telemetry/heartbeat.rb +3 -5
  197. data/lib/datadog/core/telemetry/http/adapters/net.rb +0 -2
  198. data/lib/datadog/core/telemetry/http/env.rb +1 -1
  199. data/lib/datadog/core/telemetry/http/ext.rb +10 -8
  200. data/lib/datadog/core/telemetry/http/response.rb +0 -4
  201. data/lib/datadog/core/telemetry/http/transport.rb +4 -1
  202. data/lib/datadog/core/telemetry/v1/app_event.rb +10 -3
  203. data/lib/datadog/core/telemetry/v1/application.rb +7 -1
  204. data/lib/datadog/core/telemetry/v1/dependency.rb +9 -2
  205. data/lib/datadog/core/telemetry/v1/host.rb +9 -1
  206. data/lib/datadog/core/telemetry/v1/install_signature.rb +38 -0
  207. data/lib/datadog/core/telemetry/v1/integration.rb +7 -1
  208. data/lib/datadog/core/telemetry/v1/product.rb +9 -1
  209. data/lib/datadog/core/telemetry/v1/telemetry_request.rb +7 -1
  210. data/lib/datadog/core/telemetry/v2/app_client_configuration_change.rb +41 -0
  211. data/lib/datadog/core/telemetry/v2/request.rb +29 -0
  212. data/lib/datadog/core/transport/ext.rb +47 -0
  213. data/lib/datadog/core/transport/http/adapters/net.rb +168 -0
  214. data/lib/datadog/core/transport/http/adapters/registry.rb +29 -0
  215. data/lib/datadog/core/transport/http/adapters/test.rb +89 -0
  216. data/lib/datadog/core/transport/http/adapters/unix_socket.rb +83 -0
  217. data/lib/datadog/core/transport/http/api/endpoint.rb +31 -0
  218. data/lib/datadog/core/transport/http/api/fallbacks.rb +26 -0
  219. data/lib/datadog/core/transport/http/api/map.rb +18 -0
  220. data/lib/datadog/core/transport/http/env.rb +62 -0
  221. data/lib/datadog/core/transport/http/response.rb +60 -0
  222. data/lib/datadog/core/transport/parcel.rb +22 -0
  223. data/lib/datadog/core/transport/request.rb +17 -0
  224. data/lib/datadog/core/transport/response.rb +64 -0
  225. data/lib/datadog/core/utils/compression.rb +6 -2
  226. data/lib/datadog/core/utils/duration.rb +52 -0
  227. data/lib/datadog/core/utils/forking.rb +0 -2
  228. data/lib/datadog/core/utils/hash.rb +79 -0
  229. data/lib/datadog/core/utils/network.rb +140 -0
  230. data/lib/datadog/core/utils/only_once.rb +0 -2
  231. data/lib/datadog/core/utils/safe_dup.rb +35 -12
  232. data/lib/datadog/core/utils/sequence.rb +1 -1
  233. data/lib/datadog/core/utils/time.rb +1 -3
  234. data/lib/datadog/core/utils.rb +1 -24
  235. data/lib/datadog/core/vendor/ipaddr.rb +78 -0
  236. data/lib/datadog/core/vendor/multipart-post/multipart/post/composite_read_io.rb +0 -2
  237. data/lib/datadog/core/vendor/multipart-post/multipart/post/multipartable.rb +0 -2
  238. data/lib/datadog/core/vendor/multipart-post/multipart/post/parts.rb +0 -2
  239. data/lib/datadog/core/vendor/multipart-post/multipart/post/version.rb +0 -2
  240. data/lib/datadog/core/vendor/multipart-post/multipart/post.rb +0 -2
  241. data/lib/datadog/core/vendor/multipart-post/multipart.rb +0 -2
  242. data/lib/datadog/core/vendor/multipart-post/net/http/post/multipart.rb +0 -2
  243. data/lib/datadog/core/worker.rb +1 -1
  244. data/lib/datadog/core/workers/async.rb +7 -6
  245. data/lib/datadog/core/workers/interval_loop.rb +6 -2
  246. data/lib/datadog/core/workers/polling.rb +2 -4
  247. data/lib/datadog/core/workers/queue.rb +1 -1
  248. data/lib/datadog/core/workers/runtime_metrics.rb +1 -1
  249. data/lib/datadog/core.rb +20 -55
  250. data/lib/datadog/kit/appsec/events.rb +169 -0
  251. data/lib/datadog/kit/enable_core_dumps.rb +8 -9
  252. data/lib/datadog/kit/identity.rb +90 -49
  253. data/lib/datadog/kit.rb +1 -1
  254. data/lib/datadog/opentelemetry/api/context.rb +193 -0
  255. data/lib/datadog/opentelemetry/api/trace/span.rb +14 -0
  256. data/lib/datadog/opentelemetry/sdk/configurator.rb +37 -0
  257. data/lib/datadog/opentelemetry/sdk/id_generator.rb +26 -0
  258. data/lib/datadog/opentelemetry/sdk/propagator.rb +91 -0
  259. data/lib/datadog/opentelemetry/sdk/span_processor.rb +134 -0
  260. data/lib/datadog/opentelemetry/sdk/trace/span.rb +167 -0
  261. data/lib/datadog/opentelemetry/trace.rb +58 -0
  262. data/lib/datadog/opentelemetry.rb +48 -0
  263. data/lib/datadog/opentracer/binary_propagator.rb +1 -1
  264. data/lib/datadog/opentracer/carrier.rb +1 -1
  265. data/lib/datadog/opentracer/distributed_headers.rb +7 -11
  266. data/lib/datadog/opentracer/global_tracer.rb +1 -1
  267. data/lib/datadog/opentracer/propagator.rb +1 -1
  268. data/lib/datadog/opentracer/rack_propagator.rb +0 -5
  269. data/lib/datadog/opentracer/scope.rb +1 -1
  270. data/lib/datadog/opentracer/scope_manager.rb +1 -1
  271. data/lib/datadog/opentracer/span.rb +0 -2
  272. data/lib/datadog/opentracer/span_context.rb +1 -1
  273. data/lib/datadog/opentracer/span_context_factory.rb +1 -1
  274. data/lib/datadog/opentracer/text_map_propagator.rb +6 -9
  275. data/lib/datadog/opentracer/thread_local_scope.rb +1 -1
  276. data/lib/datadog/opentracer/thread_local_scope_manager.rb +0 -2
  277. data/lib/datadog/opentracer/tracer.rb +0 -2
  278. data/lib/datadog/opentracer.rb +10 -1
  279. data/lib/datadog/profiling/collectors/code_provenance.rb +0 -2
  280. data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +53 -19
  281. data/lib/datadog/profiling/collectors/dynamic_sampling_rate.rb +14 -0
  282. data/lib/datadog/profiling/collectors/idle_sampling_helper.rb +68 -0
  283. data/lib/datadog/profiling/collectors/stack.rb +1 -1
  284. data/lib/datadog/profiling/collectors/thread_context.rb +61 -0
  285. data/lib/datadog/profiling/component.rb +434 -0
  286. data/lib/datadog/profiling/diagnostics/environment_logger.rb +39 -0
  287. data/lib/datadog/profiling/exporter.rb +12 -7
  288. data/lib/datadog/profiling/ext/forking.rb +0 -2
  289. data/lib/datadog/profiling/ext.rb +20 -32
  290. data/lib/datadog/profiling/flush.rb +8 -6
  291. data/lib/datadog/profiling/http_transport.rb +19 -8
  292. data/lib/datadog/profiling/load_native_extension.rb +7 -3
  293. data/lib/datadog/profiling/native_extension.rb +1 -22
  294. data/lib/datadog/profiling/preload.rb +1 -1
  295. data/lib/datadog/profiling/profiler.rb +42 -14
  296. data/lib/datadog/profiling/scheduler.rb +27 -25
  297. data/lib/datadog/profiling/stack_recorder.rb +30 -6
  298. data/lib/datadog/profiling/tag_builder.rb +1 -1
  299. data/lib/datadog/profiling/tasks/exec.rb +0 -2
  300. data/lib/datadog/profiling/tasks/help.rb +0 -2
  301. data/lib/datadog/profiling/tasks/setup.rb +0 -35
  302. data/lib/datadog/profiling.rb +53 -74
  303. data/lib/datadog/tracing/analytics.rb +1 -1
  304. data/lib/datadog/tracing/buffer.rb +0 -5
  305. data/lib/datadog/tracing/client_ip.rb +61 -0
  306. data/lib/datadog/tracing/component.rb +235 -0
  307. data/lib/datadog/tracing/configuration/agent_settings_resolver.rb +13 -0
  308. data/lib/datadog/tracing/configuration/dynamic/option.rb +71 -0
  309. data/lib/datadog/tracing/configuration/dynamic.rb +64 -0
  310. data/lib/datadog/tracing/configuration/ext.rb +73 -15
  311. data/lib/datadog/tracing/configuration/http.rb +74 -0
  312. data/lib/datadog/tracing/configuration/settings.rb +501 -0
  313. data/lib/datadog/tracing/context.rb +1 -1
  314. data/lib/datadog/tracing/context_provider.rb +0 -2
  315. data/lib/datadog/tracing/contrib/action_cable/configuration/settings.rb +10 -7
  316. data/lib/datadog/tracing/contrib/action_cable/event.rb +1 -1
  317. data/lib/datadog/tracing/contrib/action_cable/events/broadcast.rb +0 -2
  318. data/lib/datadog/tracing/contrib/action_cable/events/perform_action.rb +0 -2
  319. data/lib/datadog/tracing/contrib/action_cable/events/transmit.rb +0 -2
  320. data/lib/datadog/tracing/contrib/action_cable/events.rb +1 -1
  321. data/lib/datadog/tracing/contrib/action_cable/ext.rb +19 -19
  322. data/lib/datadog/tracing/contrib/action_cable/instrumentation.rb +0 -2
  323. data/lib/datadog/tracing/contrib/action_cable/integration.rb +0 -2
  324. data/lib/datadog/tracing/contrib/action_cable/patcher.rb +1 -1
  325. data/lib/datadog/tracing/contrib/action_mailer/configuration/settings.rb +10 -7
  326. data/lib/datadog/tracing/contrib/action_mailer/event.rb +1 -1
  327. data/lib/datadog/tracing/contrib/action_mailer/events/deliver.rb +0 -2
  328. data/lib/datadog/tracing/contrib/action_mailer/events/process.rb +0 -2
  329. data/lib/datadog/tracing/contrib/action_mailer/events.rb +1 -1
  330. data/lib/datadog/tracing/contrib/action_mailer/ext.rb +19 -19
  331. data/lib/datadog/tracing/contrib/action_mailer/integration.rb +0 -2
  332. data/lib/datadog/tracing/contrib/action_mailer/patcher.rb +1 -1
  333. data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +2 -26
  334. data/lib/datadog/tracing/contrib/action_pack/action_controller/patcher.rb +1 -1
  335. data/lib/datadog/tracing/contrib/action_pack/configuration/settings.rb +22 -9
  336. data/lib/datadog/tracing/contrib/action_pack/ext.rb +9 -9
  337. data/lib/datadog/tracing/contrib/action_pack/integration.rb +0 -2
  338. data/lib/datadog/tracing/contrib/action_pack/patcher.rb +1 -1
  339. data/lib/datadog/tracing/contrib/action_pack/utils.rb +0 -2
  340. data/lib/datadog/tracing/contrib/action_view/configuration/settings.rb +9 -8
  341. data/lib/datadog/tracing/contrib/action_view/event.rb +1 -1
  342. data/lib/datadog/tracing/contrib/action_view/events/render_partial.rb +0 -2
  343. data/lib/datadog/tracing/contrib/action_view/events/render_template.rb +0 -2
  344. data/lib/datadog/tracing/contrib/action_view/events.rb +1 -1
  345. data/lib/datadog/tracing/contrib/action_view/ext.rb +11 -11
  346. data/lib/datadog/tracing/contrib/action_view/instrumentation/partial_renderer.rb +0 -2
  347. data/lib/datadog/tracing/contrib/action_view/instrumentation/template_renderer.rb +0 -2
  348. data/lib/datadog/tracing/contrib/action_view/integration.rb +0 -2
  349. data/lib/datadog/tracing/contrib/action_view/patcher.rb +0 -2
  350. data/lib/datadog/tracing/contrib/action_view/utils.rb +0 -2
  351. data/lib/datadog/tracing/contrib/active_job/configuration/settings.rb +14 -8
  352. data/lib/datadog/tracing/contrib/active_job/event.rb +1 -1
  353. data/lib/datadog/tracing/contrib/active_job/events/discard.rb +0 -2
  354. data/lib/datadog/tracing/contrib/active_job/events/enqueue.rb +0 -2
  355. data/lib/datadog/tracing/contrib/active_job/events/enqueue_at.rb +0 -2
  356. data/lib/datadog/tracing/contrib/active_job/events/enqueue_retry.rb +0 -2
  357. data/lib/datadog/tracing/contrib/active_job/events/perform.rb +0 -2
  358. data/lib/datadog/tracing/contrib/active_job/events/retry_stopped.rb +0 -2
  359. data/lib/datadog/tracing/contrib/active_job/events.rb +1 -1
  360. data/lib/datadog/tracing/contrib/active_job/ext.rb +24 -24
  361. data/lib/datadog/tracing/contrib/active_job/integration.rb +0 -2
  362. data/lib/datadog/tracing/contrib/active_job/log_injection.rb +2 -2
  363. data/lib/datadog/tracing/contrib/active_job/patcher.rb +2 -2
  364. data/lib/datadog/tracing/contrib/active_model_serializers/configuration/settings.rb +10 -7
  365. data/lib/datadog/tracing/contrib/active_model_serializers/event.rb +1 -1
  366. data/lib/datadog/tracing/contrib/active_model_serializers/events/render.rb +0 -2
  367. data/lib/datadog/tracing/contrib/active_model_serializers/events/serialize.rb +0 -2
  368. data/lib/datadog/tracing/contrib/active_model_serializers/events.rb +1 -1
  369. data/lib/datadog/tracing/contrib/active_model_serializers/ext.rb +11 -11
  370. data/lib/datadog/tracing/contrib/active_model_serializers/integration.rb +0 -2
  371. data/lib/datadog/tracing/contrib/active_model_serializers/patcher.rb +1 -1
  372. data/lib/datadog/tracing/contrib/active_record/configuration/makara_resolver.rb +0 -2
  373. data/lib/datadog/tracing/contrib/active_record/configuration/resolver.rb +18 -13
  374. data/lib/datadog/tracing/contrib/active_record/configuration/settings.rb +16 -9
  375. data/lib/datadog/tracing/contrib/active_record/event.rb +1 -1
  376. data/lib/datadog/tracing/contrib/active_record/events/instantiation.rb +0 -2
  377. data/lib/datadog/tracing/contrib/active_record/events/sql.rb +3 -6
  378. data/lib/datadog/tracing/contrib/active_record/events.rb +1 -1
  379. data/lib/datadog/tracing/contrib/active_record/ext.rb +16 -16
  380. data/lib/datadog/tracing/contrib/active_record/integration.rb +0 -2
  381. data/lib/datadog/tracing/contrib/active_record/patcher.rb +1 -1
  382. data/lib/datadog/tracing/contrib/active_record/utils.rb +1 -3
  383. data/lib/datadog/tracing/contrib/active_record/vendor/connection_specification.rb +0 -2
  384. data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +107 -201
  385. data/lib/datadog/tracing/contrib/active_support/cache/patcher.rb +4 -1
  386. data/lib/datadog/tracing/contrib/active_support/cache/redis.rb +1 -1
  387. data/lib/datadog/tracing/contrib/active_support/configuration/settings.rb +18 -8
  388. data/lib/datadog/tracing/contrib/active_support/ext.rb +17 -17
  389. data/lib/datadog/tracing/contrib/active_support/integration.rb +0 -2
  390. data/lib/datadog/tracing/contrib/active_support/notifications/event.rb +1 -1
  391. data/lib/datadog/tracing/contrib/active_support/notifications/subscriber.rb +1 -1
  392. data/lib/datadog/tracing/contrib/active_support/notifications/subscription.rb +0 -2
  393. data/lib/datadog/tracing/contrib/active_support/patcher.rb +1 -1
  394. data/lib/datadog/tracing/contrib/analytics.rb +1 -1
  395. data/lib/datadog/tracing/contrib/auto_instrument.rb +1 -1
  396. data/lib/datadog/tracing/contrib/aws/configuration/settings.rb +24 -8
  397. data/lib/datadog/tracing/contrib/aws/ext.rb +36 -14
  398. data/lib/datadog/tracing/contrib/aws/instrumentation.rb +28 -3
  399. data/lib/datadog/tracing/contrib/aws/integration.rb +0 -2
  400. data/lib/datadog/tracing/contrib/aws/parsed_context.rb +4 -2
  401. data/lib/datadog/tracing/contrib/aws/patcher.rb +1 -1
  402. data/lib/datadog/tracing/contrib/aws/service/base.rb +16 -0
  403. data/lib/datadog/tracing/contrib/aws/service/dynamodb.rb +22 -0
  404. data/lib/datadog/tracing/contrib/aws/service/eventbridge.rb +22 -0
  405. data/lib/datadog/tracing/contrib/aws/service/kinesis.rb +32 -0
  406. data/lib/datadog/tracing/contrib/aws/service/s3.rb +22 -0
  407. data/lib/datadog/tracing/contrib/aws/service/sns.rb +30 -0
  408. data/lib/datadog/tracing/contrib/aws/service/sqs.rb +27 -0
  409. data/lib/datadog/tracing/contrib/aws/service/states.rb +40 -0
  410. data/lib/datadog/tracing/contrib/aws/services.rb +17 -3
  411. data/lib/datadog/tracing/contrib/concurrent_ruby/configuration/settings.rb +4 -3
  412. data/lib/datadog/tracing/contrib/concurrent_ruby/context_composite_executor_service.rb +15 -15
  413. data/lib/datadog/tracing/contrib/concurrent_ruby/ext.rb +3 -3
  414. data/lib/datadog/tracing/contrib/concurrent_ruby/future_patch.rb +4 -11
  415. data/lib/datadog/tracing/contrib/concurrent_ruby/integration.rb +2 -3
  416. data/lib/datadog/tracing/contrib/concurrent_ruby/patcher.rb +9 -3
  417. data/lib/datadog/tracing/contrib/concurrent_ruby/promises_future_patch.rb +22 -0
  418. data/lib/datadog/tracing/contrib/configurable.rb +1 -1
  419. data/lib/datadog/tracing/contrib/configuration/resolver.rb +1 -1
  420. data/lib/datadog/tracing/contrib/configuration/resolvers/pattern_resolver.rb +1 -1
  421. data/lib/datadog/tracing/contrib/configuration/settings.rb +1 -5
  422. data/lib/datadog/tracing/contrib/dalli/configuration/settings.rb +29 -8
  423. data/lib/datadog/tracing/contrib/dalli/ext.rb +25 -10
  424. data/lib/datadog/tracing/contrib/dalli/instrumentation.rb +23 -7
  425. data/lib/datadog/tracing/contrib/dalli/integration.rb +0 -2
  426. data/lib/datadog/tracing/contrib/dalli/patcher.rb +1 -1
  427. data/lib/datadog/tracing/contrib/dalli/quantize.rb +0 -2
  428. data/lib/datadog/tracing/contrib/delayed_job/configuration/settings.rb +14 -8
  429. data/lib/datadog/tracing/contrib/delayed_job/ext.rb +15 -15
  430. data/lib/datadog/tracing/contrib/delayed_job/integration.rb +0 -2
  431. data/lib/datadog/tracing/contrib/delayed_job/patcher.rb +1 -1
  432. data/lib/datadog/tracing/contrib/delayed_job/plugin.rb +9 -1
  433. data/lib/datadog/tracing/contrib/delayed_job/server_internal_tracer/worker.rb +3 -1
  434. data/lib/datadog/tracing/contrib/elasticsearch/configuration/settings.rb +24 -8
  435. data/lib/datadog/tracing/contrib/elasticsearch/ext.rb +20 -13
  436. data/lib/datadog/tracing/contrib/elasticsearch/integration.rb +0 -2
  437. data/lib/datadog/tracing/contrib/elasticsearch/patcher.rb +105 -95
  438. data/lib/datadog/tracing/contrib/elasticsearch/quantize.rb +0 -4
  439. data/lib/datadog/tracing/contrib/ethon/configuration/settings.rb +27 -10
  440. data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +52 -7
  441. data/lib/datadog/tracing/contrib/ethon/ext.rb +18 -11
  442. data/lib/datadog/tracing/contrib/ethon/integration.rb +0 -2
  443. data/lib/datadog/tracing/contrib/ethon/multi_patch.rb +10 -3
  444. data/lib/datadog/tracing/contrib/ethon/patcher.rb +1 -2
  445. data/lib/datadog/tracing/contrib/excon/configuration/settings.rb +29 -11
  446. data/lib/datadog/tracing/contrib/excon/ext.rb +15 -8
  447. data/lib/datadog/tracing/contrib/excon/integration.rb +0 -2
  448. data/lib/datadog/tracing/contrib/excon/middleware.rb +27 -4
  449. data/lib/datadog/tracing/contrib/excon/patcher.rb +1 -1
  450. data/lib/datadog/tracing/contrib/ext.rb +55 -0
  451. data/lib/datadog/tracing/contrib/extensions.rb +32 -2
  452. data/lib/datadog/tracing/contrib/faraday/configuration/settings.rb +30 -11
  453. data/lib/datadog/tracing/contrib/faraday/connection.rb +1 -1
  454. data/lib/datadog/tracing/contrib/faraday/ext.rb +15 -8
  455. data/lib/datadog/tracing/contrib/faraday/integration.rb +0 -2
  456. data/lib/datadog/tracing/contrib/faraday/middleware.rb +24 -6
  457. data/lib/datadog/tracing/contrib/faraday/patcher.rb +0 -2
  458. data/lib/datadog/tracing/contrib/faraday/rack_builder.rb +1 -1
  459. data/lib/datadog/tracing/contrib/grape/configuration/settings.rb +9 -7
  460. data/lib/datadog/tracing/contrib/grape/endpoint.rb +0 -4
  461. data/lib/datadog/tracing/contrib/grape/ext.rb +15 -15
  462. data/lib/datadog/tracing/contrib/grape/instrumentation.rb +0 -2
  463. data/lib/datadog/tracing/contrib/grape/integration.rb +0 -2
  464. data/lib/datadog/tracing/contrib/grape/patcher.rb +1 -1
  465. data/lib/datadog/tracing/contrib/graphql/configuration/settings.rb +10 -8
  466. data/lib/datadog/tracing/contrib/graphql/ext.rb +6 -6
  467. data/lib/datadog/tracing/contrib/graphql/integration.rb +0 -2
  468. data/lib/datadog/tracing/contrib/graphql/patcher.rb +0 -2
  469. data/lib/datadog/tracing/contrib/grpc/configuration/settings.rb +50 -10
  470. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +45 -19
  471. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/server.rb +43 -26
  472. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor.rb +0 -6
  473. data/lib/datadog/tracing/contrib/grpc/distributed/fetcher.rb +26 -0
  474. data/lib/datadog/tracing/contrib/grpc/distributed/propagation.rb +42 -0
  475. data/lib/datadog/tracing/contrib/grpc/ext.rb +15 -11
  476. data/lib/datadog/tracing/contrib/grpc/formatting.rb +127 -0
  477. data/lib/datadog/tracing/contrib/grpc/integration.rb +8 -3
  478. data/lib/datadog/tracing/contrib/grpc/intercept_with_datadog.rb +1 -1
  479. data/lib/datadog/tracing/contrib/grpc/patcher.rb +1 -4
  480. data/lib/datadog/tracing/contrib/hanami/action_tracer.rb +47 -0
  481. data/lib/datadog/tracing/contrib/hanami/configuration/settings.rb +23 -0
  482. data/lib/datadog/tracing/contrib/hanami/ext.rb +24 -0
  483. data/lib/datadog/tracing/contrib/hanami/integration.rb +42 -0
  484. data/lib/datadog/tracing/contrib/hanami/patcher.rb +33 -0
  485. data/lib/datadog/tracing/contrib/hanami/plugin.rb +23 -0
  486. data/lib/datadog/tracing/contrib/hanami/renderer_policy_tracing.rb +41 -0
  487. data/lib/datadog/tracing/contrib/hanami/router_tracing.rb +44 -0
  488. data/lib/datadog/tracing/contrib/http/circuit_breaker.rb +6 -9
  489. data/lib/datadog/tracing/contrib/http/configuration/settings.rb +47 -10
  490. data/lib/datadog/tracing/contrib/http/distributed/fetcher.rb +38 -0
  491. data/lib/datadog/tracing/contrib/http/distributed/propagation.rb +37 -0
  492. data/lib/datadog/tracing/contrib/http/ext.rb +15 -8
  493. data/lib/datadog/tracing/contrib/http/instrumentation.rb +32 -12
  494. data/lib/datadog/tracing/contrib/http/integration.rb +1 -1
  495. data/lib/datadog/tracing/contrib/http/patcher.rb +1 -1
  496. data/lib/datadog/tracing/contrib/http_annotation_helper.rb +1 -1
  497. data/lib/datadog/tracing/contrib/httpclient/configuration/settings.rb +47 -10
  498. data/lib/datadog/tracing/contrib/httpclient/ext.rb +16 -8
  499. data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +27 -8
  500. data/lib/datadog/tracing/contrib/httpclient/integration.rb +0 -2
  501. data/lib/datadog/tracing/contrib/httpclient/patcher.rb +0 -2
  502. data/lib/datadog/tracing/contrib/httprb/configuration/settings.rb +47 -10
  503. data/lib/datadog/tracing/contrib/httprb/ext.rb +15 -8
  504. data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +27 -9
  505. data/lib/datadog/tracing/contrib/httprb/integration.rb +0 -2
  506. data/lib/datadog/tracing/contrib/httprb/patcher.rb +0 -2
  507. data/lib/datadog/tracing/contrib/integration.rb +1 -1
  508. data/lib/datadog/tracing/contrib/kafka/configuration/settings.rb +10 -7
  509. data/lib/datadog/tracing/contrib/kafka/consumer_event.rb +2 -1
  510. data/lib/datadog/tracing/contrib/kafka/consumer_group_event.rb +1 -1
  511. data/lib/datadog/tracing/contrib/kafka/event.rb +2 -1
  512. data/lib/datadog/tracing/contrib/kafka/events/connection/request.rb +0 -2
  513. data/lib/datadog/tracing/contrib/kafka/events/consumer/process_batch.rb +0 -2
  514. data/lib/datadog/tracing/contrib/kafka/events/consumer/process_message.rb +0 -2
  515. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/heartbeat.rb +0 -2
  516. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/join_group.rb +0 -2
  517. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/leave_group.rb +0 -2
  518. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/sync_group.rb +0 -2
  519. data/lib/datadog/tracing/contrib/kafka/events/produce_operation/send_messages.rb +1 -2
  520. data/lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb +1 -2
  521. data/lib/datadog/tracing/contrib/kafka/events.rb +1 -1
  522. data/lib/datadog/tracing/contrib/kafka/ext.rb +41 -39
  523. data/lib/datadog/tracing/contrib/kafka/integration.rb +0 -2
  524. data/lib/datadog/tracing/contrib/kafka/patcher.rb +1 -1
  525. data/lib/datadog/tracing/contrib/lograge/configuration/settings.rb +4 -3
  526. data/lib/datadog/tracing/contrib/lograge/ext.rb +2 -2
  527. data/lib/datadog/tracing/contrib/lograge/instrumentation.rb +3 -18
  528. data/lib/datadog/tracing/contrib/lograge/integration.rb +0 -2
  529. data/lib/datadog/tracing/contrib/lograge/patcher.rb +1 -1
  530. data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +24 -8
  531. data/lib/datadog/tracing/contrib/mongodb/ext.rb +24 -14
  532. data/lib/datadog/tracing/contrib/mongodb/instrumentation.rb +1 -1
  533. data/lib/datadog/tracing/contrib/mongodb/integration.rb +0 -2
  534. data/lib/datadog/tracing/contrib/mongodb/parsers.rb +0 -2
  535. data/lib/datadog/tracing/contrib/mongodb/patcher.rb +1 -1
  536. data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +22 -4
  537. data/lib/datadog/tracing/contrib/mysql2/configuration/settings.rb +35 -8
  538. data/lib/datadog/tracing/contrib/mysql2/ext.rb +14 -9
  539. data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +38 -4
  540. data/lib/datadog/tracing/contrib/mysql2/integration.rb +0 -2
  541. data/lib/datadog/tracing/contrib/mysql2/patcher.rb +1 -1
  542. data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +52 -0
  543. data/lib/datadog/tracing/contrib/opensearch/ext.rb +37 -0
  544. data/lib/datadog/tracing/contrib/opensearch/integration.rb +44 -0
  545. data/lib/datadog/tracing/contrib/opensearch/patcher.rb +135 -0
  546. data/lib/datadog/tracing/contrib/opensearch/quantize.rb +81 -0
  547. data/lib/datadog/tracing/contrib/patchable.rb +1 -1
  548. data/lib/datadog/tracing/contrib/patcher.rb +3 -5
  549. data/lib/datadog/tracing/contrib/pg/configuration/settings.rb +36 -8
  550. data/lib/datadog/tracing/contrib/pg/ext.rb +21 -18
  551. data/lib/datadog/tracing/contrib/pg/instrumentation.rb +115 -39
  552. data/lib/datadog/tracing/contrib/pg/integration.rb +0 -2
  553. data/lib/datadog/tracing/contrib/pg/patcher.rb +1 -1
  554. data/lib/datadog/tracing/contrib/presto/configuration/settings.rb +23 -8
  555. data/lib/datadog/tracing/contrib/presto/ext.rb +24 -19
  556. data/lib/datadog/tracing/contrib/presto/instrumentation.rb +17 -5
  557. data/lib/datadog/tracing/contrib/presto/integration.rb +0 -2
  558. data/lib/datadog/tracing/contrib/presto/patcher.rb +0 -2
  559. data/lib/datadog/tracing/contrib/propagation/sql_comment/comment.rb +41 -0
  560. data/lib/datadog/tracing/contrib/propagation/sql_comment/ext.rb +33 -0
  561. data/lib/datadog/tracing/contrib/propagation/sql_comment/mode.rb +28 -0
  562. data/lib/datadog/tracing/contrib/propagation/sql_comment.rb +53 -0
  563. data/lib/datadog/tracing/contrib/qless/configuration/settings.rb +13 -9
  564. data/lib/datadog/tracing/contrib/qless/ext.rb +13 -13
  565. data/lib/datadog/tracing/contrib/qless/integration.rb +0 -2
  566. data/lib/datadog/tracing/contrib/qless/patcher.rb +1 -2
  567. data/lib/datadog/tracing/contrib/qless/qless_job.rb +3 -2
  568. data/lib/datadog/tracing/contrib/qless/tracer_cleaner.rb +1 -1
  569. data/lib/datadog/tracing/contrib/que/configuration/settings.rb +21 -14
  570. data/lib/datadog/tracing/contrib/que/ext.rb +0 -2
  571. data/lib/datadog/tracing/contrib/que/integration.rb +0 -2
  572. data/lib/datadog/tracing/contrib/que/patcher.rb +0 -2
  573. data/lib/datadog/tracing/contrib/que/tracer.rb +4 -2
  574. data/lib/datadog/tracing/contrib/racecar/configuration/settings.rb +18 -8
  575. data/lib/datadog/tracing/contrib/racecar/event.rb +7 -4
  576. data/lib/datadog/tracing/contrib/racecar/events/batch.rb +4 -3
  577. data/lib/datadog/tracing/contrib/racecar/events/consume.rb +0 -2
  578. data/lib/datadog/tracing/contrib/racecar/events/message.rb +4 -3
  579. data/lib/datadog/tracing/contrib/racecar/events.rb +1 -1
  580. data/lib/datadog/tracing/contrib/racecar/ext.rb +19 -18
  581. data/lib/datadog/tracing/contrib/racecar/integration.rb +0 -2
  582. data/lib/datadog/tracing/contrib/racecar/patcher.rb +1 -1
  583. data/lib/datadog/tracing/contrib/rack/configuration/settings.rb +16 -14
  584. data/lib/datadog/tracing/contrib/rack/ext.rb +17 -12
  585. data/lib/datadog/tracing/contrib/rack/header_collection.rb +38 -0
  586. data/lib/datadog/tracing/contrib/rack/header_tagging.rb +63 -0
  587. data/lib/datadog/tracing/contrib/rack/integration.rb +0 -2
  588. data/lib/datadog/tracing/contrib/rack/middlewares.rb +130 -81
  589. data/lib/datadog/tracing/contrib/rack/patcher.rb +0 -2
  590. data/lib/datadog/tracing/contrib/rack/request_queue.rb +0 -2
  591. data/lib/datadog/tracing/contrib/rails/auto_instrument_railtie.rb +0 -4
  592. data/lib/datadog/tracing/contrib/rails/configuration/settings.rb +28 -19
  593. data/lib/datadog/tracing/contrib/rails/ext.rb +6 -6
  594. data/lib/datadog/tracing/contrib/rails/framework.rb +1 -1
  595. data/lib/datadog/tracing/contrib/rails/integration.rb +0 -2
  596. data/lib/datadog/tracing/contrib/rails/log_injection.rb +7 -12
  597. data/lib/datadog/tracing/contrib/rails/middlewares.rb +1 -1
  598. data/lib/datadog/tracing/contrib/rails/patcher.rb +10 -43
  599. data/lib/datadog/tracing/contrib/rails/railtie.rb +3 -5
  600. data/lib/datadog/tracing/contrib/rails/utils.rb +2 -2
  601. data/lib/datadog/tracing/contrib/rake/configuration/settings.rb +14 -11
  602. data/lib/datadog/tracing/contrib/rake/ext.rb +13 -13
  603. data/lib/datadog/tracing/contrib/rake/instrumentation.rb +0 -2
  604. data/lib/datadog/tracing/contrib/rake/integration.rb +0 -2
  605. data/lib/datadog/tracing/contrib/rake/patcher.rb +1 -1
  606. data/lib/datadog/tracing/contrib/redis/configuration/resolver.rb +0 -2
  607. data/lib/datadog/tracing/contrib/redis/configuration/settings.rb +26 -10
  608. data/lib/datadog/tracing/contrib/redis/ext.rb +21 -13
  609. data/lib/datadog/tracing/contrib/redis/instrumentation.rb +13 -39
  610. data/lib/datadog/tracing/contrib/redis/integration.rb +34 -3
  611. data/lib/datadog/tracing/contrib/redis/patcher.rb +53 -11
  612. data/lib/datadog/tracing/contrib/redis/quantize.rb +11 -10
  613. data/lib/datadog/tracing/contrib/redis/tags.rb +24 -9
  614. data/lib/datadog/tracing/contrib/redis/trace_middleware.rb +83 -0
  615. data/lib/datadog/tracing/contrib/redis/vendor/resolver.rb +0 -2
  616. data/lib/datadog/tracing/contrib/registerable.rb +1 -1
  617. data/lib/datadog/tracing/contrib/registry.rb +1 -1
  618. data/lib/datadog/tracing/contrib/resque/configuration/settings.rb +14 -8
  619. data/lib/datadog/tracing/contrib/resque/ext.rb +8 -8
  620. data/lib/datadog/tracing/contrib/resque/integration.rb +0 -2
  621. data/lib/datadog/tracing/contrib/resque/patcher.rb +1 -1
  622. data/lib/datadog/tracing/contrib/resque/resque_job.rb +5 -1
  623. data/lib/datadog/tracing/contrib/rest_client/configuration/settings.rb +27 -10
  624. data/lib/datadog/tracing/contrib/rest_client/ext.rb +14 -8
  625. data/lib/datadog/tracing/contrib/rest_client/integration.rb +0 -2
  626. data/lib/datadog/tracing/contrib/rest_client/patcher.rb +1 -2
  627. data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +28 -3
  628. data/lib/datadog/tracing/contrib/roda/configuration/settings.rb +37 -0
  629. data/lib/datadog/tracing/contrib/roda/ext.rb +18 -0
  630. data/lib/datadog/tracing/contrib/roda/instrumentation.rb +76 -0
  631. data/lib/datadog/tracing/contrib/roda/integration.rb +45 -0
  632. data/lib/datadog/{ci/contrib/cucumber → tracing/contrib/roda}/patcher.rb +10 -7
  633. data/lib/datadog/tracing/contrib/semantic_logger/configuration/settings.rb +4 -3
  634. data/lib/datadog/tracing/contrib/semantic_logger/ext.rb +2 -2
  635. data/lib/datadog/tracing/contrib/semantic_logger/instrumentation.rb +6 -21
  636. data/lib/datadog/tracing/contrib/semantic_logger/integration.rb +0 -2
  637. data/lib/datadog/tracing/contrib/semantic_logger/patcher.rb +1 -1
  638. data/lib/datadog/tracing/contrib/sequel/configuration/settings.rb +10 -7
  639. data/lib/datadog/tracing/contrib/sequel/database.rb +4 -3
  640. data/lib/datadog/tracing/contrib/sequel/dataset.rb +5 -2
  641. data/lib/datadog/tracing/contrib/sequel/ext.rb +9 -9
  642. data/lib/datadog/tracing/contrib/sequel/integration.rb +0 -2
  643. data/lib/datadog/tracing/contrib/sequel/patcher.rb +1 -1
  644. data/lib/datadog/tracing/contrib/sequel/utils.rb +7 -6
  645. data/lib/datadog/tracing/contrib/shoryuken/configuration/settings.rb +15 -9
  646. data/lib/datadog/tracing/contrib/shoryuken/ext.rb +13 -12
  647. data/lib/datadog/tracing/contrib/shoryuken/integration.rb +0 -2
  648. data/lib/datadog/tracing/contrib/shoryuken/patcher.rb +1 -1
  649. data/lib/datadog/tracing/contrib/shoryuken/tracer.rb +5 -1
  650. data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +18 -4
  651. data/lib/datadog/tracing/contrib/sidekiq/configuration/settings.rb +19 -11
  652. data/lib/datadog/tracing/contrib/sidekiq/distributed/propagation.rb +38 -0
  653. data/lib/datadog/tracing/contrib/sidekiq/ext.rb +31 -31
  654. data/lib/datadog/tracing/contrib/sidekiq/integration.rb +8 -2
  655. data/lib/datadog/tracing/contrib/sidekiq/patcher.rb +15 -3
  656. data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/heartbeat.rb +14 -5
  657. data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/job_fetch.rb +3 -1
  658. data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/redis_info.rb +3 -1
  659. data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/scheduled_poller.rb +5 -1
  660. data/lib/datadog/tracing/contrib/sidekiq/server_internal_tracer/stop.rb +34 -0
  661. data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +24 -3
  662. data/lib/datadog/tracing/contrib/sidekiq/{tracing.rb → utils.rb} +2 -2
  663. data/lib/datadog/tracing/contrib/sinatra/configuration/settings.rb +11 -11
  664. data/lib/datadog/tracing/contrib/sinatra/env.rb +11 -41
  665. data/lib/datadog/tracing/contrib/sinatra/ext.rb +23 -19
  666. data/lib/datadog/tracing/contrib/sinatra/framework.rb +0 -2
  667. data/lib/datadog/tracing/contrib/sinatra/integration.rb +0 -2
  668. data/lib/datadog/tracing/contrib/sinatra/patcher.rb +2 -3
  669. data/lib/datadog/tracing/contrib/sinatra/tracer.rb +8 -82
  670. data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +14 -20
  671. data/lib/datadog/tracing/contrib/sneakers/configuration/settings.rb +14 -10
  672. data/lib/datadog/tracing/contrib/sneakers/ext.rb +2 -2
  673. data/lib/datadog/tracing/contrib/sneakers/integration.rb +0 -2
  674. data/lib/datadog/tracing/contrib/sneakers/patcher.rb +0 -2
  675. data/lib/datadog/tracing/contrib/sneakers/tracer.rb +5 -2
  676. data/lib/datadog/tracing/contrib/span_attribute_schema.rb +92 -0
  677. data/lib/datadog/tracing/contrib/status_code_matcher.rb +0 -3
  678. data/lib/datadog/tracing/contrib/stripe/configuration/settings.rb +36 -0
  679. data/lib/datadog/tracing/contrib/stripe/ext.rb +26 -0
  680. data/lib/datadog/tracing/contrib/stripe/integration.rb +43 -0
  681. data/lib/datadog/tracing/contrib/stripe/patcher.rb +28 -0
  682. data/lib/datadog/tracing/contrib/stripe/request.rb +67 -0
  683. data/lib/datadog/tracing/contrib/sucker_punch/configuration/settings.rb +10 -7
  684. data/lib/datadog/tracing/contrib/sucker_punch/exception_handler.rb +1 -1
  685. data/lib/datadog/tracing/contrib/sucker_punch/ext.rb +14 -14
  686. data/lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb +0 -2
  687. data/lib/datadog/tracing/contrib/sucker_punch/integration.rb +0 -2
  688. data/lib/datadog/tracing/contrib/sucker_punch/patcher.rb +1 -2
  689. data/lib/datadog/tracing/contrib/utils/database.rb +4 -4
  690. data/lib/datadog/tracing/contrib/utils/quantization/hash.rb +0 -2
  691. data/lib/datadog/tracing/contrib/utils/quantization/http.rb +92 -14
  692. data/lib/datadog/tracing/contrib.rb +5 -1
  693. data/lib/datadog/tracing/correlation.rb +42 -14
  694. data/lib/datadog/tracing/diagnostics/environment_logger.rb +165 -0
  695. data/lib/datadog/{core → tracing}/diagnostics/ext.rb +21 -26
  696. data/lib/datadog/tracing/diagnostics/health.rb +40 -0
  697. data/lib/datadog/tracing/distributed/b3_multi.rb +72 -0
  698. data/lib/datadog/tracing/distributed/b3_single.rb +68 -0
  699. data/lib/datadog/tracing/distributed/datadog.rb +199 -0
  700. data/lib/datadog/tracing/distributed/datadog_tags_codec.rb +84 -0
  701. data/lib/datadog/tracing/distributed/fetcher.rb +21 -0
  702. data/lib/datadog/tracing/distributed/headers/ext.rb +19 -16
  703. data/lib/datadog/tracing/distributed/helpers.rb +26 -39
  704. data/lib/datadog/tracing/distributed/none.rb +18 -0
  705. data/lib/datadog/tracing/distributed/propagation.rb +127 -0
  706. data/lib/datadog/tracing/distributed/trace_context.rb +415 -0
  707. data/lib/datadog/tracing/event.rb +0 -4
  708. data/lib/datadog/tracing/flush.rb +58 -36
  709. data/lib/datadog/tracing/metadata/analytics.rb +1 -1
  710. data/lib/datadog/tracing/metadata/errors.rb +1 -1
  711. data/lib/datadog/tracing/metadata/ext.rb +29 -14
  712. data/lib/datadog/tracing/metadata/tagging.rb +17 -4
  713. data/lib/datadog/tracing/metadata.rb +1 -1
  714. data/lib/datadog/tracing/pipeline/span_filter.rb +1 -1
  715. data/lib/datadog/tracing/pipeline/span_processor.rb +1 -1
  716. data/lib/datadog/tracing/pipeline.rb +0 -4
  717. data/lib/datadog/tracing/propagation/http.rb +4 -99
  718. data/lib/datadog/tracing/remote.rb +78 -0
  719. data/lib/datadog/tracing/runtime/metrics.rb +1 -3
  720. data/lib/datadog/tracing/sampling/all_sampler.rb +1 -1
  721. data/lib/datadog/tracing/sampling/ext.rb +30 -1
  722. data/lib/datadog/tracing/sampling/matcher.rb +1 -1
  723. data/lib/datadog/tracing/sampling/priority_sampler.rb +58 -5
  724. data/lib/datadog/tracing/sampling/rate_by_key_sampler.rb +8 -11
  725. data/lib/datadog/tracing/sampling/rate_by_service_sampler.rb +29 -8
  726. data/lib/datadog/tracing/sampling/rate_limiter.rb +3 -2
  727. data/lib/datadog/tracing/sampling/rate_sampler.rb +23 -10
  728. data/lib/datadog/tracing/sampling/rule.rb +0 -4
  729. data/lib/datadog/tracing/sampling/rule_sampler.rb +33 -7
  730. data/lib/datadog/tracing/sampling/sampler.rb +0 -2
  731. data/lib/datadog/tracing/sampling/span/ext.rb +25 -0
  732. data/lib/datadog/tracing/sampling/span/matcher.rb +9 -0
  733. data/lib/datadog/tracing/sampling/span/rule.rb +82 -0
  734. data/lib/datadog/tracing/sampling/span/rule_parser.rb +104 -0
  735. data/lib/datadog/tracing/sampling/span/sampler.rb +77 -0
  736. data/lib/datadog/tracing/span.rb +3 -21
  737. data/lib/datadog/tracing/span_operation.rb +8 -24
  738. data/lib/datadog/tracing/sync_writer.rb +4 -6
  739. data/lib/datadog/tracing/trace_digest.rb +120 -3
  740. data/lib/datadog/tracing/trace_operation.rb +61 -13
  741. data/lib/datadog/tracing/trace_segment.rb +20 -7
  742. data/lib/datadog/tracing/tracer.rb +46 -10
  743. data/lib/datadog/tracing/transport/http/api/instance.rb +37 -0
  744. data/lib/datadog/tracing/transport/http/api/spec.rb +19 -0
  745. data/lib/datadog/tracing/transport/http/api.rb +43 -0
  746. data/lib/datadog/tracing/transport/http/builder.rb +162 -0
  747. data/lib/datadog/tracing/transport/http/client.rb +57 -0
  748. data/lib/datadog/tracing/transport/http/statistics.rb +47 -0
  749. data/lib/datadog/tracing/transport/http/traces.rb +152 -0
  750. data/lib/datadog/tracing/transport/http.rb +124 -0
  751. data/lib/datadog/tracing/transport/io/client.rb +89 -0
  752. data/lib/datadog/tracing/transport/io/response.rb +27 -0
  753. data/lib/datadog/tracing/transport/io/traces.rb +101 -0
  754. data/lib/datadog/tracing/transport/io.rb +30 -0
  755. data/lib/datadog/tracing/transport/serializable_trace.rb +126 -0
  756. data/lib/datadog/tracing/transport/statistics.rb +77 -0
  757. data/lib/datadog/tracing/transport/trace_formatter.rb +209 -0
  758. data/lib/datadog/tracing/transport/traces.rb +224 -0
  759. data/lib/datadog/tracing/utils.rb +83 -0
  760. data/lib/datadog/tracing/workers/trace_writer.rb +6 -7
  761. data/lib/datadog/tracing/workers.rb +4 -6
  762. data/lib/datadog/tracing/writer.rb +12 -6
  763. data/lib/datadog/tracing.rb +1 -1
  764. data/lib/ddtrace/auto_instrument.rb +1 -1
  765. data/lib/ddtrace/auto_instrument_base.rb +1 -1
  766. data/lib/ddtrace/profiling/preload.rb +0 -2
  767. data/lib/ddtrace/transport/ext.rb +21 -15
  768. data/lib/ddtrace/version.rb +14 -15
  769. data/lib/ddtrace.rb +3 -5
  770. metadata +230 -113
  771. data/ext/ddtrace_profiling_native_extension/collectors_cpu_and_wall_time.c +0 -390
  772. data/ext/ddtrace_profiling_native_extension/collectors_cpu_and_wall_time.h +0 -6
  773. data/lib/datadog/appsec/assets/waf_rules/risky.json +0 -1499
  774. data/lib/datadog/appsec/contrib/configuration/settings.rb +0 -20
  775. data/lib/datadog/appsec/contrib/rack/configuration/settings.rb +0 -22
  776. data/lib/datadog/appsec/contrib/rack/request.rb +0 -58
  777. data/lib/datadog/appsec/contrib/rack/response.rb +0 -24
  778. data/lib/datadog/appsec/contrib/rails/configuration/settings.rb +0 -22
  779. data/lib/datadog/appsec/contrib/sinatra/configuration/settings.rb +0 -22
  780. data/lib/datadog/ci/configuration/components.rb +0 -32
  781. data/lib/datadog/ci/configuration/settings.rb +0 -53
  782. data/lib/datadog/ci/contrib/cucumber/configuration/settings.rb +0 -33
  783. data/lib/datadog/ci/contrib/cucumber/ext.rb +0 -22
  784. data/lib/datadog/ci/contrib/cucumber/formatter.rb +0 -94
  785. data/lib/datadog/ci/contrib/cucumber/instrumentation.rb +0 -28
  786. data/lib/datadog/ci/contrib/cucumber/integration.rb +0 -49
  787. data/lib/datadog/ci/contrib/rspec/configuration/settings.rb +0 -33
  788. data/lib/datadog/ci/contrib/rspec/example.rb +0 -70
  789. data/lib/datadog/ci/contrib/rspec/ext.rb +0 -21
  790. data/lib/datadog/ci/contrib/rspec/integration.rb +0 -50
  791. data/lib/datadog/ci/contrib/rspec/patcher.rb +0 -27
  792. data/lib/datadog/ci/ext/app_types.rb +0 -11
  793. data/lib/datadog/ci/ext/environment.rb +0 -505
  794. data/lib/datadog/ci/ext/settings.rb +0 -12
  795. data/lib/datadog/ci/ext/test.rb +0 -37
  796. data/lib/datadog/ci/extensions.rb +0 -19
  797. data/lib/datadog/ci/flush.rb +0 -38
  798. data/lib/datadog/ci/test.rb +0 -83
  799. data/lib/datadog/ci.rb +0 -20
  800. data/lib/datadog/core/configuration/dependency_resolver.rb +0 -28
  801. data/lib/datadog/core/configuration/option_definition_set.rb +0 -22
  802. data/lib/datadog/core/configuration/option_set.rb +0 -10
  803. data/lib/datadog/core/utils/object_set.rb +0 -43
  804. data/lib/datadog/core/utils/string_table.rb +0 -49
  805. data/lib/datadog/profiling/backtrace_location.rb +0 -34
  806. data/lib/datadog/profiling/buffer.rb +0 -43
  807. data/lib/datadog/profiling/collectors/cpu_and_wall_time.rb +0 -27
  808. data/lib/datadog/profiling/collectors/old_stack.rb +0 -298
  809. data/lib/datadog/profiling/encoding/profile.rb +0 -43
  810. data/lib/datadog/profiling/event.rb +0 -15
  811. data/lib/datadog/profiling/events/stack.rb +0 -82
  812. data/lib/datadog/profiling/old_ext.rb +0 -42
  813. data/lib/datadog/profiling/old_recorder.rb +0 -101
  814. data/lib/datadog/profiling/pprof/builder.rb +0 -127
  815. data/lib/datadog/profiling/pprof/converter.rb +0 -104
  816. data/lib/datadog/profiling/pprof/message_set.rb +0 -16
  817. data/lib/datadog/profiling/pprof/payload.rb +0 -20
  818. data/lib/datadog/profiling/pprof/pprof.proto +0 -212
  819. data/lib/datadog/profiling/pprof/pprof_pb.rb +0 -83
  820. data/lib/datadog/profiling/pprof/stack_sample.rb +0 -141
  821. data/lib/datadog/profiling/pprof/string_table.rb +0 -12
  822. data/lib/datadog/profiling/pprof/template.rb +0 -120
  823. data/lib/datadog/profiling/trace_identifiers/ddtrace.rb +0 -45
  824. data/lib/datadog/profiling/trace_identifiers/helper.rb +0 -47
  825. data/lib/datadog/profiling/transport/http/api/endpoint.rb +0 -85
  826. data/lib/datadog/profiling/transport/http/api/instance.rb +0 -38
  827. data/lib/datadog/profiling/transport/http/api/spec.rb +0 -42
  828. data/lib/datadog/profiling/transport/http/api.rb +0 -45
  829. data/lib/datadog/profiling/transport/http/builder.rb +0 -30
  830. data/lib/datadog/profiling/transport/http/client.rb +0 -37
  831. data/lib/datadog/profiling/transport/http/response.rb +0 -21
  832. data/lib/datadog/profiling/transport/http.rb +0 -118
  833. data/lib/datadog/tracing/contrib/sinatra/headers.rb +0 -35
  834. data/lib/datadog/tracing/distributed/headers/b3.rb +0 -55
  835. data/lib/datadog/tracing/distributed/headers/b3_single.rb +0 -67
  836. data/lib/datadog/tracing/distributed/headers/datadog.rb +0 -52
  837. data/lib/datadog/tracing/distributed/headers/parser.rb +0 -37
  838. data/lib/datadog/tracing/distributed/metadata/b3.rb +0 -55
  839. data/lib/datadog/tracing/distributed/metadata/b3_single.rb +0 -66
  840. data/lib/datadog/tracing/distributed/metadata/datadog.rb +0 -73
  841. data/lib/datadog/tracing/distributed/metadata/parser.rb +0 -34
  842. data/lib/datadog/tracing/propagation/grpc.rb +0 -98
  843. data/lib/ddtrace/transport/http/adapters/net.rb +0 -158
  844. data/lib/ddtrace/transport/http/adapters/registry.rb +0 -27
  845. data/lib/ddtrace/transport/http/adapters/test.rb +0 -87
  846. data/lib/ddtrace/transport/http/adapters/unix_socket.rb +0 -79
  847. data/lib/ddtrace/transport/http/api/endpoint.rb +0 -29
  848. data/lib/ddtrace/transport/http/api/fallbacks.rb +0 -24
  849. data/lib/ddtrace/transport/http/api/instance.rb +0 -35
  850. data/lib/ddtrace/transport/http/api/map.rb +0 -16
  851. data/lib/ddtrace/transport/http/api/spec.rb +0 -17
  852. data/lib/ddtrace/transport/http/api.rb +0 -41
  853. data/lib/ddtrace/transport/http/builder.rb +0 -178
  854. data/lib/ddtrace/transport/http/client.rb +0 -54
  855. data/lib/ddtrace/transport/http/env.rb +0 -58
  856. data/lib/ddtrace/transport/http/response.rb +0 -58
  857. data/lib/ddtrace/transport/http/statistics.rb +0 -45
  858. data/lib/ddtrace/transport/http/traces.rb +0 -146
  859. data/lib/ddtrace/transport/http.rb +0 -121
  860. data/lib/ddtrace/transport/io/client.rb +0 -87
  861. data/lib/ddtrace/transport/io/response.rb +0 -25
  862. data/lib/ddtrace/transport/io/traces.rb +0 -101
  863. data/lib/ddtrace/transport/io.rb +0 -28
  864. data/lib/ddtrace/transport/parcel.rb +0 -22
  865. data/lib/ddtrace/transport/request.rb +0 -15
  866. data/lib/ddtrace/transport/response.rb +0 -62
  867. data/lib/ddtrace/transport/serializable_trace.rb +0 -118
  868. data/lib/ddtrace/transport/statistics.rb +0 -75
  869. data/lib/ddtrace/transport/trace_formatter.rb +0 -187
  870. data/lib/ddtrace/transport/traces.rb +0 -216
data/CHANGELOG.md CHANGED
@@ -2,11 +2,614 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [1.19.0] - 2024-01-10
6
+
7
+ ### Highlights
8
+ Alpha support for memory profiling has been added. For more details, check the [release notes](https://github.com/DataDog/dd-trace-rb/releases/tag/v1.19.0)
9
+
10
+ ### Added
11
+ * Tracing: Add `on_error` settings for `mysql2` ([#3316][])
12
+ * Core: Add install_signature to app-started telemetry event ([#3349][])
13
+ * Profiling: Heap Profiling ([#3281][]) ([#3287][]) ([#3328][]) ([#3329][]) ([#3333][]) ([#3360][])
14
+ * Profiling: Redesign GC profiling to add timeline support and reduce overhead ([#3313][])
15
+ * Core: Use Ruby 3.3 stable for CI testing ([#3354][])
16
+
17
+ ### Changed
18
+ * Core: Bump `datadog-ci` dependency to 0.6.0 ([#3361][])
19
+ * Core: Bump debase-ruby_core_source dependency to 3.3.1 ([#3373][])
20
+ * Docs: Backport "List Ruby 3.3 as supported in the docs" to master branch ([#3374][])
21
+ * Profiling: Import upstream `rb_profile_frames` fix ([#3352][])
22
+ * Profiling: Allow the dynamic sampling rate overhead target to be set ([#3310][])
23
+ * Profiling: Split profiling tests into ractor and non-ractor suites. ([#3320][])
24
+
25
+ ### Fixed
26
+ * Docs: Fix `pg` doc markdown format ([#3317][])
27
+ * Tracing: Fix recursive `require` in Railtie ([#3365][])
28
+ * Profiling: Fix issues stemming from rb_gc_force_recycle ([#3366][])
29
+ * Profiling: Fix Ruby 3.3 CI being broken in master due to profiler ([#3356][])
30
+ * Profiling: Fix "no signals" workaround detection when mariadb is in use ([#3362][])
31
+
32
+ ## [1.18.0] - 2023-12-07
33
+
34
+ ### Added
35
+
36
+ * Tracing: Support lib injection for ARM64 architecture ([#3307][])
37
+ * Tracing: Add `error_handler` for `pg` instrumentation ([#3303][])
38
+ * Appsec: Enable "Trusted IPs", a.k.a passlist with optional monitoring ([#3229][])
39
+
40
+ ### Changed
41
+
42
+ * Mark ddtrace threads as fork-safe ([#3279][])
43
+ * Bump `datadog-ci` dependency to 0.5.0 ([#3308][])
44
+ * Bump `debase-ruby_core_source` dependency to 3.2.3 ([#3284][])
45
+ * Profiling: Disable profiler on Ruby 3.3 when running with RUBY_MN_THREADS=1 ([#3259][])
46
+ * Profiling: Run without "no signals" workaround on passenger 6.0.19+ ([#3280][])
47
+
48
+ ### Fixed
49
+
50
+ * Tracing: Fix `pg` instrumentation `enabled` settings ([#3271][])
51
+ * Profiling: Fix potential crash by importing upstream `rb_profile_frames` fix ([#3289][])
52
+ * Appsec: Call `devise` RegistrationsController block ([#3286][])
53
+
54
+ ## [1.17.0] - 2023-11-22
55
+
56
+ For W3C Trace Context, this release adds [`tracecontext`](https://www.w3.org/TR/trace-context/) to the default trace propagation extraction and injection styles. The new defaults are:
57
+ * Extraction: `Datadog,b3multi,b3,tracecontext`
58
+ * Injection: `Datadog,tracecontext`
59
+
60
+ And to increase interoperability with `tracecontext`, 128-bit Trace ID generation is now the default.
61
+
62
+ For OpenTelemetry, this release adds support for converting [OpenTelemetry Trace Semantic Conventions](https://opentelemetry.io/docs/specs/semconv/general/trace/) into equivalent Datadog trace semantics. Also, it's now possible to configure top-level Datadog span fields using OpenTelemetry span attributes (https://github.com/DataDog/dd-trace-rb/pull/3262).
63
+
64
+ For CI Visibility, you can now manually create CI traces and spans with the [newly released API](https://github.com/DataDog/datadog-ci-rb/releases/tag/v0.4.0).
65
+
66
+ ### Added
67
+
68
+ * OpenTelemetry: Parse OpenTelemetry semantic conventions to Datadog's ([#3273][])
69
+ * OpenTelemetry: Support span reserved attribute overrides ([#3262][])
70
+ * Tracing: Ensure W3C `tracestate` is always propagated ([#3255][])
71
+
72
+ ### Changed
73
+
74
+ * Tracing: Set 128-bit trace_id to true by default ([#3266][])
75
+ * Tracing: Default trace propagation styles to `Datadog,b3multi,b3,tracecontext` ([#3248][],[#3267][])
76
+ * Ci-App: Upgraded `datadog-ci` dependency to 0.4 ([#3270][])
77
+
78
+ ## [1.16.2] - 2023-11-10
79
+
80
+ This release reverts a change to appsec response body parsing that was introduced in [1.16.0 ](https://github.com/DataDog/dd-trace-rb/releases/tag/v1.16.0) that may cause memory leaks.
81
+
82
+ ### Fixed
83
+ * Appsec: [Revert parse response body fix introduced in 1.16.0](https://github.com/DataDog/dd-trace-rb/pull/3153) ([#3252][])
84
+
85
+ ## [1.16.1] - 2023-11-08
86
+
87
+ ### Fixed
88
+
89
+ * Tracing: Fix `concurrent-ruby` future propagation without `active_trace` ([#3242][])
90
+ * Tracing: Fix host injection error handling ([#3240][])
91
+
92
+ ## [1.16.0] - 2023-11-03
93
+
94
+ **This release includes a security change for the Tracing Redis integration:**
95
+
96
+ Currently, the Datadog Agent removes command arguments from the resource name. However there are cases, like Redis compressed keys, where this obfuscation cannot correctly remove command arguments. To safeguard that situation, the resource name set by the tracer will only be the command (e.g. `SET`) with no arguments. To retain the previous behavior and keep arguments in the span resource, with the potential risk of some command arguments not being fully obfuscated, set ``DD_REDIS_COMMAND_ARGS=true`` or set the option `c.instrument :redis, command_args: true`.
97
+
98
+ ### Added
99
+
100
+ * Tracing: Propagate trace through `Concurrent::Promises.future` ([#1522][])
101
+ * Core: Name `Datadog::Core::Remote::Worker` thread ([#3207][])
102
+
103
+ ### Changed
104
+
105
+ * Tracing: Redis - Omit command arguments from span.resource by default ([#3235][])
106
+ * Ci-app: Bump `datadog-ci` dependency from 0.2.0 to 0.3.0 ([#3223][])
107
+
108
+ ### Fixed
109
+
110
+ * Appsec: ASM parse response body ([#3153][])
111
+ * Appsec: ASM make sure to append content type and length information ([#3204][])
112
+ * Appsec: Make sure function that checks content-type header value accepts nil content-type header value ([#3234][])
113
+ * Profiling: Shut down profiler if any components failed ([#3197][])
114
+ * Tracing: Fix `ActiveSupport` instrumentation of custom cache stores ([#3206][])
115
+
116
+ ## [1.15.0] - 2023-10-09
117
+
118
+ ### Highlights
119
+
120
+ * Timeline view for Profiler beta
121
+ * Configure AppSec blocking responses via configuration or Remote Configuration
122
+ * CI visibility to configure with agentless mode
123
+
124
+ For more details, check the [release notes](https://github.com/DataDog/dd-trace-rb/releases/tag/v1.15.0)
125
+
126
+ ### Added
127
+
128
+ * Enable allocation counting feature by default for some Ruby 3 versions ([#3176][])
129
+ * Detect `WebMock` `Cucumber` and `Rails.env` to disable telemetry and remote configuration for development environment ([#3065][], [#3062][], [#3145][])
130
+ * Profiling: Import java-profiler PID controller and port it to C ([#3190][])
131
+ * Profiling: Record allocation type when sampling objects ([#3096][])
132
+ * Profiling: Include `ruby vm type` in profiler allocation samples ([#3074][])
133
+ * Tracing: Support `Rack` 3 ([#3132][])
134
+ * Tracing: Support `Opensearch` 3 ([#3189][])
135
+ * Tracing: `grpc` adds `client_error_handler` option ([#3095][])
136
+ * Tracing: Add `async` option for `test_mode` configuration ([#3158][])
137
+ * Tracing: Implements `_dd.base_service` tag ([#3018][])
138
+ * Appsec: Allow blocking response template configuration via ENV variables ([#2975][])
139
+ * Appsec: ASM API security. Schema extraction ([#3131][], [#3166][], [#3177][])
140
+ * Appsec: Enable configuring blocking response via Remote Configuration ([#3099][])
141
+ * Ci-app: Validate git tags ([#3100][])
142
+ * Ci-app: Add agentless mode ([#3186][])
143
+
144
+ ### Changed
145
+
146
+ * Appsec: Skip passing waf addresses when the value is empty ([#3188][])
147
+ * Profiling: Restore support for Ruby 3.3 ([#3167][])
148
+ * Profiling: Add approximate thread state categorization for timeline ([#3162][])
149
+ * Profiling: Wire up allocation sampling into `CpuAndWallTimeWorker` ([#3103][])
150
+ * Tracing: `dalli` disable memcached command tag by default ([#3171][])
151
+ * Tracing: Use first valid extracted style for distributed tracing ([#2879][])
152
+ * Tracing: Rename configuration option `on_set` to `after_set` ([#3107][])
153
+ * Tracing: Rename `experimental_default_proc` to `default_proc` ([#3091][])
154
+ * Tracing: Use `peer.service` for sql comment propagation ([#3127][])
155
+ * Ci-app: Fix `Datadog::CI::Environment` to support the new CI specs ([#3080][])
156
+ * Bump `datadog-ci` dependency to 0.2 ([#3186][])
157
+ * Bump `debase-ruby_core_source` dependency to 3.2.2 ([#3163][])
158
+ * Upgrade `libdatadog` 5 ([#3169][], [#3104][])
159
+ * Upgrade `libddwaf-rb` 1.11.0 ([#3087][])
160
+ * Update AppSec rules to 1.8.0 ([#3140][], [#3139][])
161
+
162
+ ### Fixed
163
+
164
+ * Profiling: Add workaround for incorrect invoke location when logging gem is in use ([#3183][])
165
+ * Profiling: Fix missing endpoint profiling when `request_queuing` is enabled in `rack` instrumentation ([#3109][])
166
+ * Appsec: Span tags reporting the number of WAF failed loaded rules ([#3106][])
167
+ * Tracing: Fix tagging with empty data ([#3102][])
168
+ * Tracing: Fix `rails.cache.backend` span tag with multiple stores ([#3060][])
169
+
170
+ ### Removed
171
+
172
+ * Profiling: Remove legacy profiler codepath ([#3172][])
173
+ * Ci-app: Remove CI module and add a dependency on [`datadog-ci` gem](https://github.com/DataDog/datadog-ci-rb) ([#3128][])
174
+ * Tracing: Remove `depends_on` option from configuration DSL ([#3085][])
175
+ * Tracing: Remove `delegate_to` option from configuration DSL ([#3086][])
176
+
177
+ ## [1.14.0] - 2023-08-24
178
+
179
+ ### Added
180
+
181
+ * Cucumber 8.0.0 support, test CI visibility with cucumber versions 6-8 ([#3061][])
182
+ * Tracing: Add `ddsource` to #to_log_format ([#3025][])
183
+ * Core: include peer service configurations in telemetry payload ([#3056][])
184
+ * Tracing: Improve quantization ([#3041][])
185
+
186
+ ### Changed
187
+
188
+ * Profiling: Disable profiler on Ruby 3.3 due to incompatibility ([#3054][])
189
+ * Core: EnvironmentLogger adjustments ([#3020][], [#3057][])
190
+
191
+ ### Fixed
192
+
193
+ * Appsec: Fix ASM setting for automated user events. ([#3070][])
194
+ * Tracing: Fix ActiveRecord adapter name for Rails 7 ([#3051][])
195
+
196
+ ## [1.13.1] - 2023-08-14
197
+
198
+ ### Fixed
199
+
200
+ * Tracing: `net/http` instrumentation excludes query string for `http.url` tag ([#3045][])
201
+ * Tracing: Remove `log_tags` warning when given hash for log injection ([#3022][])
202
+ * Tracing: Fix OpenSearch integration loading ([#3019][])
203
+ * Core: Fix default hostname/port when mixing http and uds configuration ([#3037][])
204
+ * Core: Disable Telemetry and Remote Configuration in development environments ([#3039][])
205
+ * Profiling: Improve `Datadog::Profiling::HttpTransport` error logging ([#3038][])
206
+ * Docs: Document known issues with hanging Resque workers ([#3033][])
207
+
208
+ ## [1.13.0] - 2023-07-31
209
+
210
+ ### Added
211
+
212
+ * Core: Add support for `Option` precedence ([#2915][])
213
+ * Core: Add support for unsetting options ([#2972][])
214
+ * Core: Gauge primitive `RubyVM::YJIT.runtime_stats`, if `YJIT` is enabled ([#2711][], [#2959][])([@HeyNonster][])
215
+ * Core: Add Telemetry `app-client-configuration-change` event ([#2977][])
216
+ * Core: Improve our `SafeDup` module ([#2960][])
217
+ * Tracing: Add `OpenSearch` Integration ([#2940][])
218
+ * Tracing: Implement `peer.service` tag to integrations ([#2982][])
219
+ * Tracing: Add mandatory rpc and grpc tags for `grpc` integration ([#2620][], [#2962][])
220
+ * Tracing: Include `_dd.profiling.enabled` tag ([#2913][])
221
+ * Tracing: Support host injection ([#2941][], [#3007][])
222
+ * Tracing: Implement Dynamic Configuration for tracing ([#2848][], [#2973][])
223
+ * Tracing: Add for dynamic log injection configuration ([#2992][])
224
+ * Tracing: Add sampling configuration with `DD_TRACE_SAMPLING_RULES` ([#2968][])
225
+ * Tracing: Add HTTP header tagging with `DD_TRACE_HEADER_TAGS` for clients and servers ([#2946][], [#2935][])
226
+ * Profiling: Add fallback name/invoke location for unnamed threads started in native code ([#2993][])
227
+ * Profiling: Use invoke location as a fallback for nameless threads in the profiler ([#2950][])
228
+ * Profiling: Add fallback name for main thread in profiling data ([#2939][])
229
+ * Ci-app: Add `Minitest` CI integration ([#2932][]) ([@bravehager][])
230
+ * Appsec: `Devise` integration and automatic user events ([#2877][])
231
+ * Appsec: Handle disabled tracing and appsec events ([#2572][])
232
+ * Appsec: Automate user events check for UUID in safe mode ([#2952][])
233
+ * Docs: Add Ruby 3.2 support to compatibility matrix ([#2971][])
234
+
235
+ ### Changed
236
+
237
+ * Core: Set maximum supported Ruby version ([#2497][])
238
+ * Core: Prevent telemetry requests from being traced ([#2961][])
239
+ * Core: Add `env` and `type` to Core configuration option ([#2983][], [#2988][], [#2994][])
240
+ * Core: Remove `lazy` from Core configuration option ([#2931][], [#2999][])
241
+ * Profiling: Bump `libdatadog` dependency to version 3 ([#2948][])
242
+ * Profiling: Improve error message when `ddtrace_profiling_loader` fails to load ([#2957][])
243
+ * Tracing: Improve log injection runtime conditionals ([#2926][], [#2882][])
244
+
245
+ ### Fixed
246
+
247
+ * Core: Fix polynomial-time regular expressions ([#2814][])
248
+ * Core: Fix environment variable for dynamic configuration polling interval ([#2967][])
249
+ * Core: Reduce remote configuration error logging noise ([#3011][])
250
+ * Tracing: Fix manual log injection for 128 bit trace_id ([#2974][])
251
+ * Tracing: Ensure the GRPC client interceptor return the response ([#2928][]) ([@KJTsanaktsidis][])
252
+ * Tracing: Remove dynamic input used in regular expression ([#2867][])
253
+ * Tracing: Fix distributed tracing header formats ([#3005][] )
254
+ * Profiling: Fix profiler `libmysqlclient` version detection with `mysql2-aurora` gem ([#2956][])
255
+ * Profiling: Automatically enable profiler "no signals" workaround for `passenger` web server ([#2978][])
256
+
257
+ ## [1.12.1] - 2023-06-14
258
+
259
+ ### Added
260
+ * Appsec: Add `appsec.blocked` tag to span ([#2895][])
261
+ * Profiling: Add workaround for legacy profiler incompatibility with ruby-cloud-profiler gem ([#2891][])
262
+ * Core: Allow setting remote configuration service name ([#2853][])
263
+
264
+ ### Changed
265
+ * Appsec: Change the value format for the WAF address `server.request.query` ([#2903][])
266
+ * Profiling: Log pkg-config command when building profiling native extension
267
+
268
+ ### Fixed
269
+ * Appsec: Update blocked response content_type resolution ([#2900][])
270
+ * Appsec: Ensure to use service entry span. ([#2898][])
271
+ * Tracing: Fix AWS integration constant loading ([#2896][])
272
+
273
+ ## [1.12.0] - 2023-06-02
274
+
275
+ ### Added
276
+ * Profiling: Add support for profiling Ruby 3.3.0-preview1 ([#2860][])
277
+ * Appsec: Appsec support nested apps ([#2836][])
278
+ * Appsec: Appsec add support for custom rules ([#2856][])
279
+ * Appsec: Update appsec static rules to 1.7.0 version ([#2869][])
280
+ * Appsec: Tag AppSec on Rack top-level span ([#2858][])
281
+ * Profiling: Implement "no signals" workaround and enable CPU Profiling 2.0 for all customers ([#2873][])
282
+ * Ci: Update CI Visibility spec ([#2874][])
283
+ * Appsec: Added missing waf addresses to request operation ([#2883][])
284
+
285
+ ### Changed
286
+
287
+ * Tracing: Consistent APM Span tags for AWS SDK Requests ([#2730][])
288
+ * Tracing: Change default `service_name` values Part 2 ([#2765][])
289
+ * Profiling: Bump debase-ruby_core_source dependency to 3.2.1 ([#2875][])
290
+
291
+ ### Fixed
292
+ * Telemetry: Disable for non-HTTP agent connection ([#2815][])
293
+ * Tracing: Fix circular requires ([#2826][])
294
+ * Tracing: Update comment about Datadog::Tracing::Distributed::Ext to correct modules ([#2840][])
295
+ * Appsec: Check if `:appsec` setting is present before accessing it in remote component ([#2854][])
296
+ * Telemetry: Do not send Dependency `hash` when `version` is present ([#2855][])
297
+ * Core: Fix symbol configuration for `env` and `service` ([#2864][])
298
+ * Tracing: Fix sql comment propagation `full` mode when tracing is disabled ([#2866][])
299
+ * Appsec: Use relative URI for server.request.uri.raw ([#2890][])
300
+
301
+ ## [1.11.1] - 2023-05-03
302
+
303
+ ### Fixed
304
+
305
+ * Appsec: Remove misreported `ASM_CUSTOM_RULES` capability ([#2829][])
306
+ * Appsec: Fix block response content negotiation ([#2824][])
307
+ * Appsec: Fix incorrect remote configuration payload key handling ([#2822][])
308
+
309
+ ## [1.11.0] - 2023-04-27
310
+
311
+ ### Highlights
312
+
313
+ As of ddtrace 1.11.0, these features are GA and emabled by default:
314
+
315
+ - CPU Profiling 2.0
316
+ - Remote Configuration
317
+ - Telemetry
318
+
319
+ For more details, check the release notes.
320
+
321
+ ### Added
322
+
323
+ * Add remote configuration, enabled by default ([#2674][], [#2678][], [#2686][], [#2687][], [#2688][], [#2689][], [#2696][], [#2705][], [#2731][], [#2732][], [#2733][], [#2739][], [#2756][], [#2769][], [#2771][], [#2773][], [#2789][], [#2805][], [#2794][])
324
+ * AppSec: Add response headers passing to WAF ([#2701][])
325
+ * Tracing: Distributed tracing for Sidekiq ([#2513][])
326
+ * Tracing: Add Roda integration ([#2368][])
327
+ * Profiling: Support disabling endpoint names collection in new profiler ([#2698][])
328
+ * Tracing: Support Sidekiq 7 ([#2810][])
329
+ * Core: Add support for Unix Domain Socket (UDS) configuration via `DD_TRACE_AGENT_URL` ([#2806][])
330
+ * Core: Enable Telemetry by default ([#2762][])
331
+
332
+ ### Changed
333
+
334
+ * Core: Allow `1` as true value in environment variables ([#2710][])
335
+ * Profiling: Enable CPU Profiling 2.0 by default ([#2702][])
336
+ * Tracing: Improve controller instrumentation and deprecate option `exception_controller` ([#2726][])
337
+ * Tracing: Implement Span Attribute Schema Environment Variable ([#2727][])
338
+ * Tracing: Change default `service_name` values (gated by feature flag) ([#2760][])
339
+
340
+ ### Fixed
341
+
342
+ * Bug: Tracing: Fix w3c propagation special character handling ([#2720][])
343
+ * Performance: Tracing: Use `+@` instead of `dup` for duplicating strings ([#2704][])
344
+ * Profiling: Avoid triggering allocation sampling during sampling ([#2690][])
345
+ * Integrations: Tracing: Fix Rails < 3 conditional check in Utils#railtie_supported? ([#2695][])
346
+ * Profiling: Do not auto-enable new profiler when rugged gem is detected ([#2741][])
347
+ * Tracing: Fix using SemanticLogger#log(severity, message, progname) ([#2748][]) ([@rqz13][])
348
+ * Profiling: Improve detection of mysql2 gem incompatibilities with profiler ([#2770][])
349
+ * AppSec: Remove check for `::Rack::Request.instance_methods.include?(:each_header)` at load time ([#2778][])
350
+ * Tracing: Fix quadratic backtracking on invalid URI ([#2788][])
351
+ * Community: Correctly set mutex ([#2757][]) ([@ixti][])
352
+
353
+ Read the [full changeset](https://github.com/DataDog/dd-trace-rb/compare/v1.10.1...v1.11.0.beta1) and the release [milestone](https://github.com/DataDog/dd-trace-rb/milestone/121?closed=1).
354
+
355
+ ## [1.11.0.beta1] - 2023-04-14
356
+
357
+ As of ddtrace 1.11.0.beta1, CPU Profiling 2.0 is now GA and enabled by default. For more details, check the release notes.
358
+
359
+ As of ddtrace 1.11.0.beta1, Remote Configuration is now public beta and disabled by default. For more details, check the release notes.
360
+
361
+ ### Added
362
+
363
+ * Add remote configuration beta, disabled by default ([#2674][], [#2678][], [#2686][], [#2687][], [#2688][], [#2689][], [#2696][], [#2705][], [#2731][], [#2732][], [#2733][], [#2739][], [#2756][], [#2769][], [#2771][], [#2773][], [#2789][])
364
+ * AppSec: Add response headers passing to WAF ([#2701][])
365
+ * Tracing: Distributed tracing for Sidekiq ([#2513][])
366
+ * Tracing: Add Roda integration ([#2368][])
367
+ * Profiling: [PROF-6555] Support disabling endpoint names collection in new profiler ([#2698][])
368
+
369
+ ### Changed
370
+
371
+ * Core: Allow `1` as true value in environment variables ([#2710][])
372
+ * Profiling: [PROF-7360] Enable CPU Profiling 2.0 by default ([#2702][])
373
+ * Tracing: Improve controller instrumentation and deprecate option `exception_controller` ([#2726][])
374
+ * Tracing: Implement Span Attribute Schema Environment Variable ([#2727][])
375
+
376
+ ### Fixed
377
+
378
+ * Bug: Tracing: Fix w3c propagation special character handling ([#2720][])
379
+ * Performance: Tracing: Use `+@` instead of `dup` for duplicating strings ([#2704][])
380
+ * Profiling: [PROF-7307] Avoid triggering allocation sampling during sampling ([#2690][])
381
+ * Integrations: Tracing: Fix Rails < 3 conditional check in Utils#railtie_supported? ([#2695][])
382
+ * Profiling: [PROF-7409] Do not auto-enable new profiler when rugged gem is detected ([#2741][])
383
+ * Tracing: Fix using SemanticLogger#log(severity, message, progname) ([#2748][]) ([@rqz13][])
384
+ * Profiling: [PROF-6447] Improve detection of mysql2 gem incompatibilities with profiler ([#2770][])
385
+ * AppSec: Remove check for `::Rack::Request.instance_methods.include?(:each_header)` at load time ([#2778][])
386
+ * Tracing: Fix quadratic backtracking on invalid URI ([#2788][])
387
+
388
+ ## [1.10.1] - 2023-03-10
389
+
390
+ ### Fixed
391
+
392
+ * CI: Update TeamCity environment variable support ([#2668][])
393
+ * Core: Fix spurious dependency on AppSec when loading CI with `require 'datadog/ci'` ([#2679][])
394
+ * Core: Allow multiple headers and multiple IPs per header for client IP ([#2665][])
395
+ * AppSec: prevent side-effect on AppSec login event tracking method arguments ([#2663][]) ([@coneill-enhance][])
396
+
397
+ ## [1.10.0] - 2023-03-06
398
+
399
+ ### Added
400
+
401
+ * Support Ruby 3.2 ([#2601][])
402
+ * Publish init container image (beta) for `dd-trace-rb` injection through K8s admission controller ([#2606][])
403
+ * Tracing: Support 128 bits trace id ([#2543][])
404
+ * Tracing: Add tags to integrations (`que` / `racecar` / `resque`/ `shoryken` / `sneakers` / `qless` / `delayed_job` / `kafka` / `sidekiq` / `dalli` / `presto` / `elasticsearch`) ([#2619][], [#2613][] , [#2608][], [#2590][])
405
+ * Appsec: Introduce `AppSec::Instrumentation::Gateway::Argument` ([#2648][])
406
+ * Appsec: Block request when user ID matches rules ([#2642][])
407
+ * Appsec: Block request base on response addresses matches ([#2605][])
408
+ * Appsec: Allow to set user id denylist ([#2612][])
409
+ * Profiling: Show profiler overhead in flamegraph for CPU Profiling 2.0 ([#2607][])
410
+ * Profiling: Add support for allocation samples to `ThreadContext` ([#2657][])
411
+ * Profiling: Exclude disabled profiling sample value types from output ([#2634][])
412
+ * Profiling: Extend stack collector to record the alloc-samples metric ([#2618][])
413
+ * Profiling: Add `Profiling.allocation_count` API for new profiler ([#2635][])
414
+
415
+ ### Changed
416
+
417
+ * Tracing: `rack` instrumentation counts time spent in queue as part of the `http_server.queue` span ([#2591][]) ([@agrobbin][])
418
+ * Appsec: Update ruleset to 1.5.2 ([#2662][], [#2659][], [#2598][])
419
+ * Appsec: Update `libddwaf` version to 1.6.2.0.0 ([#2614][])
420
+ * Profiling: Upgrade profiler to use `libdatadog` v2.0.0 ([#2599][])
421
+ * Profiling: Remove support for profiling Ruby 2.2 ([#2592][])
422
+
423
+ ### Fixed
424
+
425
+ * Fix broken Ruby VM statistics for Ruby 3.2 ([#2600][])
426
+ * Tracing: Fix 'uninitialized constant GRPC::Interceptor' error with 'gapic-common' gem ([#2649][])
427
+ * Profiling: Fix profiler not adding the "In native code" placeholder ([#2594][])
428
+ * Fix profiler detection for google-protobuf installation ([#2595][])
429
+
430
+ ## [1.9.0] - 2023-01-30
431
+
432
+ As of ddtrace 1.9.0, CPU Profiling 2.0 is now in opt-in (that is, disabled by default) public beta. For more details, check the release notes.
433
+
434
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.9.0
435
+
436
+ ### Added
437
+
438
+ * Tracing: Add `Stripe` instrumentation ([#2557][])
439
+ * Tracing: Add configurable response codes considered as errors for `Net/HTTP`, `httprb` and `httpclient` ([#2501][], [#2576][])([@caramcc][])
440
+ * Tracing: Flexible header matching for HTTP propagator ([#2504][])
441
+ * Tracing: `OpenTelemetry` Traces support ([#2496][])
442
+ * Tracing: W3C: Propagate unknown values as-is ([#2485][])
443
+ * Appsec: Add event kit API ([#2512][])
444
+ * Profiling: Allow profiler development on arm64 macOS ([#2573][])
445
+ * Core: Add `profiling_enabled` state to environment logger output ([#2541][])
446
+ * Core: Add 'type' to `OptionDefinition` ([#2493][])
447
+ * Allow `debase-ruby_core_source` 3.2.0 to be used ([#2526][])
448
+
449
+ ### Changed
450
+
451
+ * Profiling: Upgrade to `libdatadog` to `1.0.1.1.0` ([#2530][])
452
+ * Appsec: Update appsec rules `1.4.3` ([#2580][])
453
+ * Ci: Update CI Visibility metadata extraction ([#2586][])
454
+
455
+ ### Fixed
456
+
457
+ * Profiling: Fix wrong `libdatadog` version being picked during profiler build ([#2531][])
458
+ * Tracing: Support `PG` calls with a block ([#2522][])
459
+ * Ci: Fix error in `teamcity` env vars ([#2562][])
460
+
461
+ ## [1.8.0] - 2022-12-14
462
+
463
+ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.8.0
464
+
465
+ As of ddtrace 1.8.0, CPU Profiling 2.0 is now in opt-in (that is, disabled by default) public beta. For more details,
466
+ check the release notes.
467
+
468
+ ### Added
469
+
470
+ * Core: Profiling: [PROF-6559] Mark Ruby CPU Profiling 2.0 as being in beta ([#2489][])
471
+ * Tracing: Attempt to parse future version of TraceContext ([#2473][])
472
+ * Tracing: Add DD_TRACE_PROPAGATION_STYLE option ([#2466][])
473
+ * Integrations: Tracing: SQL comment propagation full mode with traceparent ([#2464][])
474
+ * Integrations: Tracing: Wire W3C propagator to HTTP & gRPC propagation ([#2458][])
475
+ * Integrations: Tracing: Auto-instrumentation with service_name from environmental variable ([#2455][])
476
+ * Core: Integrations: Tracing: Deprecation notice for B3 propagation configuration ([#2454][])
477
+ * Tracing: Add W3C Trace Context propagator ([#2451][])
478
+ * Integrations: Tracing: Redis 5 Instrumentation ([#2428][])
479
+
480
+ ### Changed
481
+
482
+ * Tracing: Changes `error.msg` to `error.message` for UNC ([#2469][])
483
+ * Tracing: Semicolons not allowed in 'origin' ([#2461][])
484
+ * Core: Dev/refactor: Tracing: Dev/internal: Move Utils#next_id and constants to Tracing::Utils ([#2463][])
485
+ * Core: Dev/refactor: Tracing: Dev/internal: Move Tracing config settings from Core to Tracing ([#2459][])
486
+ * Core: Dev/refactor: Tracing: Dev/internal: Move Tracing diagnostic code from Core to Tracing ([#2453][])
487
+
488
+ ### Fixed
489
+
490
+ * Integrations: Tracing: Improve redis integration patching ([#2470][])
491
+ * Tracing: Extra testing from W3C spec ([#2460][])
492
+
493
+ ## [1.7.0] - 2022-11-29
494
+
495
+ ### Added
496
+ * Integrations: Support que 2 ([#2382][]) ([@danhodge][])
497
+ * Tracing: Unified tagging `span.kind` as `server` and `client` ([#2365][])
498
+ * Tracing: Adds `span.kind` tag for `kafka`, `sidekiq`, `racecar`, `que`, `shoryuken`, `sneakers`, and `resque` ([#2420][], [#2419][], [#2413][], [#2394][])
499
+ * Tracing: Adds `span.kind` with values `producer` and `consumer` for `delayed_job` ([#2393][])
500
+ * Tracing: Adds `span.kind` as `client` for `redis` ([#2392][])
501
+ * Appsec: Pass HTTP client IP to WAF ([#2316][])
502
+ * Unified tagging `process_id` ([#2276][])
503
+
504
+ ### Changed
505
+ * Allow `debase-ruby_core_source` 0.10.18 to be used ([#2435][])
506
+ * Update AppSec ruleset to v1.4.2 ([#2390][])
507
+ * Refactored clearing of profile data after Ruby app forks ([#2362][], [#2367][])
508
+ * Tracing: Move distributed propagation to Contrib ([#2352][])
509
+
510
+ ### Fixed
511
+ * Fix ddtrace installation issue when users have CI=true ([#2378][])
512
+
513
+ ## [1.6.1] - 2022-11-16
514
+
515
+ ### Changed
516
+
517
+ * Limit `redis` version support to less than 5
518
+
519
+ ### Fixed
520
+
521
+ * [redis]: Fix frozen input for `Redis.new(...)`
522
+
523
+ ## [1.6.0] - 2022-11-15
524
+
525
+ ### Added
526
+
527
+ * Trace level tags propagation in distributed tracing ([#2260][])
528
+ * [hanami]: Hanami 1.x instrumentation ([#2230][])
529
+ * [pg, mysql2]: option `comment_propagation` for SQL comment propagation, default is `disabled` ([#2339][])([#2324][])
530
+
531
+ ### Changed
532
+
533
+ * [rack, sinatra]: Squash nested spans and improve patching mechanism.<br> No need to `register Datadog::Tracing::Contrib::Sinatra::Tracer`([#2217][])
534
+ * [rails, rack]: Fix Non-GET request method with rails exception controller ([#2317][])
535
+ * Upgrade to libdatadog 0.9.0.1.0 ([#2302][])
536
+ * Remove legacy profiling transport ([#2062][])
537
+
538
+ ### Fixed
539
+
540
+ * [redis]: Fix redis instance configuration, not on `client` ([#2363][])
541
+ ```
542
+ # Change your code from
543
+ Datadog.configure_onto(redis.client, service_name: '...')
544
+ # to
545
+ Datadog.configure_onto(redis, service_name: '...')
546
+ ```
547
+ * Allow `DD_TAGS` values to have the colon character ([#2292][])
548
+ * Ensure that `TraceSegment` can be reported correctly when they are dropped ([#2335][])
549
+ * Docs: Fixes upgrade guide on configure_onto ([#2307][])
550
+ * Fix environment logger with IO transport ([#2313][])
551
+
552
+ ## [1.5.2] - 2022-10-27
553
+
554
+ ### Deprecation notice
555
+
556
+ - `DD_TRACE_CLIENT_IP_HEADER_DISABLED` was changed to `DD_TRACE_CLIENT_IP_ENABLED`. Although the former still works we encourage usage of the latter instead.
557
+
558
+ ### Changed
559
+
560
+ - `http.client_ip` tag collection is made opt-in for APM. Note that `http.client_ip` is always collected when ASM is enabled as part of the security service provided ([#2321][], [#2331][])
561
+
562
+ ### Fixed
563
+
564
+ - Handle REQUEST_URI with base url ([#2328][], [#2330][])
565
+
566
+ ## [1.5.1] - 2022-10-19
567
+
568
+ ### Changed
569
+
570
+ * Update libddwaf to 1.5.1 ([#2306][])
571
+ * Improve libddwaf extension memory management ([#2306][])
572
+
573
+ ### Fixed
574
+
575
+ * Fix `URI::InvalidURIError` ([#2310][], [#2318][]) ([@yujideveloper][])
576
+ * Handle URLs with invalid characters ([#2311][], [#2319][])
577
+ * Fix missing appsec.event tag ([#2306][])
578
+ * Fix missing Rack and Rails request body parsing for AppSec analysis ([#2306][])
579
+ * Fix unneeded AppSec call in a Rack context when AppSec is disabled ([#2306][])
580
+ * Fix spurious AppSec instrumentation ([#2306][])
581
+
582
+ ## [1.5.0] - 2022-09-29
583
+
584
+ ### Deprecation notice
585
+
586
+ * `c.tracing.instrument :rack, { quantize: { base: ... } }` will change its default from `:exclude` to `:show` in a future version. Voluntarily moving to `:show` is recommended.
587
+ * `c.tracing.instrument :rack, { quantize: { query: { show: ... } }` will change its default to `:all` in a future version, together with `quantize.query.obfuscate` changing to `:internal`. Voluntarily moving to these future values is recommended.
588
+
589
+ ### Added
590
+
591
+ * Feature: Single Span Sampling ([#2128][])
592
+ * Add query string automatic redaction ([#2283][])
593
+ * Use full URL in `http.url` tag ([#2265][])
594
+ * Add `http.useragent` tag ([#2252][])
595
+ * Add `http.client_ip` tag for Rack-based frameworks ([#2248][])
596
+ * Ci-app: CI: Fetch committer and author in Bitrise ([#2258][])
597
+
598
+ ### Changed
599
+
600
+ * Bump allowed version of debase-ruby_core_source to include v0.10.17 ([#2267][])
601
+
602
+ ### Fixed
603
+
604
+ * Bug: Fix `service_nam` typo to `service_name` ([#2296][])
605
+ * Bug: Check AppSec Rails for railties instead of rails meta gem ([#2293][]) ([@seuros][])
606
+ * Ci-app: Correctly extract commit message from AppVeyor ([#2257][])
607
+
5
608
  ## [1.4.2] - 2022-09-27
6
609
 
7
610
  ### Fixed
8
611
 
9
- OpenTracing context propagation (#2191, #2289)
612
+ OpenTracing context propagation ([#2191][], [#2289][])
10
613
 
11
614
  ## [1.4.1] - 2022-09-15
12
615
 
@@ -2103,7 +2706,33 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
2103
2706
 
2104
2707
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2105
2708
 
2106
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.2...master
2709
+
2710
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v1.19.0...master
2711
+ [1.19.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.18.0...v1.19.0
2712
+ [1.18.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.17.0...v1.18.0
2713
+ [1.17.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.16.2...v1.17.0
2714
+ [1.16.2]: https://github.com/DataDog/dd-trace-rb/compare/v1.16.1...v1.16.2
2715
+ [1.16.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.16.0...v1.16.1
2716
+ [1.16.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.15.0...v1.16.0
2717
+ [1.15.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.14.0...v1.15.0
2718
+ [1.14.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.13.1...1.14.0
2719
+ [1.13.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.13.0...1.13.1
2720
+ [1.13.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.12.1...v1.13.0
2721
+ [1.12.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.12.0...v1.12.1
2722
+ [1.12.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.11.1...v1.12.0
2723
+ [1.11.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.1...v1.11.1
2724
+ [1.11.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.1...v1.11.0
2725
+ [1.11.0.beta1]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.1...v1.11.0.beta1
2726
+ [1.10.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.10.0...v1.10.1
2727
+ [1.10.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.9.0...v1.10.0
2728
+ [1.9.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.8.0...v1.9.0
2729
+ [1.8.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.7.0...v1.8.0
2730
+ [1.7.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.6.1...v1.7.0
2731
+ [1.6.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.6.0...v1.6.1
2732
+ [1.6.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.2...v1.6.0
2733
+ [1.5.2]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.1...v1.5.2
2734
+ [1.5.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.5.0...v1.5.1
2735
+ [1.5.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.2...v1.5.0
2107
2736
  [1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.1...v1.4.2
2108
2737
  [1.4.1]: https://github.com/DataDog/dd-trace-rb/compare/v1.4.0...v1.4.1
2109
2738
  [1.4.0]: https://github.com/DataDog/dd-trace-rb/compare/v1.3.0...v1.4.0
@@ -2822,6 +3451,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2822
3451
  [#1509]: https://github.com/DataDog/dd-trace-rb/issues/1509
2823
3452
  [#1510]: https://github.com/DataDog/dd-trace-rb/issues/1510
2824
3453
  [#1511]: https://github.com/DataDog/dd-trace-rb/issues/1511
3454
+ [#1522]: https://github.com/DataDog/dd-trace-rb/issues/1522
2825
3455
  [#1523]: https://github.com/DataDog/dd-trace-rb/issues/1523
2826
3456
  [#1524]: https://github.com/DataDog/dd-trace-rb/issues/1524
2827
3457
  [#1529]: https://github.com/DataDog/dd-trace-rb/issues/1529
@@ -2959,6 +3589,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2959
3589
  [#2054]: https://github.com/DataDog/dd-trace-rb/issues/2054
2960
3590
  [#2059]: https://github.com/DataDog/dd-trace-rb/issues/2059
2961
3591
  [#2061]: https://github.com/DataDog/dd-trace-rb/issues/2061
3592
+ [#2062]: https://github.com/DataDog/dd-trace-rb/issues/2062
2962
3593
  [#2066]: https://github.com/DataDog/dd-trace-rb/issues/2066
2963
3594
  [#2069]: https://github.com/DataDog/dd-trace-rb/issues/2069
2964
3595
  [#2070]: https://github.com/DataDog/dd-trace-rb/issues/2070
@@ -2973,6 +3604,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2973
3604
  [#2113]: https://github.com/DataDog/dd-trace-rb/issues/2113
2974
3605
  [#2118]: https://github.com/DataDog/dd-trace-rb/issues/2118
2975
3606
  [#2125]: https://github.com/DataDog/dd-trace-rb/issues/2125
3607
+ [#2128]: https://github.com/DataDog/dd-trace-rb/issues/2128
2976
3608
  [#2134]: https://github.com/DataDog/dd-trace-rb/issues/2134
2977
3609
  [#2138]: https://github.com/DataDog/dd-trace-rb/issues/2138
2978
3610
  [#2140]: https://github.com/DataDog/dd-trace-rb/issues/2140
@@ -2985,12 +3617,354 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2985
3617
  [#2173]: https://github.com/DataDog/dd-trace-rb/issues/2173
2986
3618
  [#2174]: https://github.com/DataDog/dd-trace-rb/issues/2174
2987
3619
  [#2180]: https://github.com/DataDog/dd-trace-rb/issues/2180
3620
+ [#2191]: https://github.com/DataDog/dd-trace-rb/issues/2191
2988
3621
  [#2200]: https://github.com/DataDog/dd-trace-rb/issues/2200
2989
3622
  [#2201]: https://github.com/DataDog/dd-trace-rb/issues/2201
3623
+ [#2217]: https://github.com/DataDog/dd-trace-rb/issues/2217
2990
3624
  [#2219]: https://github.com/DataDog/dd-trace-rb/issues/2219
2991
3625
  [#2229]: https://github.com/DataDog/dd-trace-rb/issues/2229
3626
+ [#2230]: https://github.com/DataDog/dd-trace-rb/issues/2230
3627
+ [#2248]: https://github.com/DataDog/dd-trace-rb/issues/2248
2992
3628
  [#2250]: https://github.com/DataDog/dd-trace-rb/issues/2250
3629
+ [#2252]: https://github.com/DataDog/dd-trace-rb/issues/2252
3630
+ [#2257]: https://github.com/DataDog/dd-trace-rb/issues/2257
3631
+ [#2258]: https://github.com/DataDog/dd-trace-rb/issues/2258
3632
+ [#2260]: https://github.com/DataDog/dd-trace-rb/issues/2260
3633
+ [#2265]: https://github.com/DataDog/dd-trace-rb/issues/2265
3634
+ [#2267]: https://github.com/DataDog/dd-trace-rb/issues/2267
3635
+ [#2276]: https://github.com/DataDog/dd-trace-rb/issues/2276
2993
3636
  [#2279]: https://github.com/DataDog/dd-trace-rb/issues/2279
3637
+ [#2283]: https://github.com/DataDog/dd-trace-rb/issues/2283
3638
+ [#2289]: https://github.com/DataDog/dd-trace-rb/issues/2289
3639
+ [#2292]: https://github.com/DataDog/dd-trace-rb/issues/2292
3640
+ [#2293]: https://github.com/DataDog/dd-trace-rb/issues/2293
3641
+ [#2296]: https://github.com/DataDog/dd-trace-rb/issues/2296
3642
+ [#2302]: https://github.com/DataDog/dd-trace-rb/issues/2302
3643
+ [#2306]: https://github.com/DataDog/dd-trace-rb/issues/2306
3644
+ [#2307]: https://github.com/DataDog/dd-trace-rb/issues/2307
3645
+ [#2310]: https://github.com/DataDog/dd-trace-rb/issues/2310
3646
+ [#2311]: https://github.com/DataDog/dd-trace-rb/issues/2311
3647
+ [#2313]: https://github.com/DataDog/dd-trace-rb/issues/2313
3648
+ [#2316]: https://github.com/DataDog/dd-trace-rb/issues/2316
3649
+ [#2317]: https://github.com/DataDog/dd-trace-rb/issues/2317
3650
+ [#2318]: https://github.com/DataDog/dd-trace-rb/issues/2318
3651
+ [#2319]: https://github.com/DataDog/dd-trace-rb/issues/2319
3652
+ [#2321]: https://github.com/DataDog/dd-trace-rb/issues/2321
3653
+ [#2324]: https://github.com/DataDog/dd-trace-rb/issues/2324
3654
+ [#2328]: https://github.com/DataDog/dd-trace-rb/issues/2328
3655
+ [#2330]: https://github.com/DataDog/dd-trace-rb/issues/2330
3656
+ [#2331]: https://github.com/DataDog/dd-trace-rb/issues/2331
3657
+ [#2335]: https://github.com/DataDog/dd-trace-rb/issues/2335
3658
+ [#2339]: https://github.com/DataDog/dd-trace-rb/issues/2339
3659
+ [#2352]: https://github.com/DataDog/dd-trace-rb/issues/2352
3660
+ [#2362]: https://github.com/DataDog/dd-trace-rb/issues/2362
3661
+ [#2363]: https://github.com/DataDog/dd-trace-rb/issues/2363
3662
+ [#2365]: https://github.com/DataDog/dd-trace-rb/issues/2365
3663
+ [#2367]: https://github.com/DataDog/dd-trace-rb/issues/2367
3664
+ [#2368]: https://github.com/DataDog/dd-trace-rb/issues/2368
3665
+ [#2378]: https://github.com/DataDog/dd-trace-rb/issues/2378
3666
+ [#2382]: https://github.com/DataDog/dd-trace-rb/issues/2382
3667
+ [#2390]: https://github.com/DataDog/dd-trace-rb/issues/2390
3668
+ [#2392]: https://github.com/DataDog/dd-trace-rb/issues/2392
3669
+ [#2393]: https://github.com/DataDog/dd-trace-rb/issues/2393
3670
+ [#2394]: https://github.com/DataDog/dd-trace-rb/issues/2394
3671
+ [#2413]: https://github.com/DataDog/dd-trace-rb/issues/2413
3672
+ [#2419]: https://github.com/DataDog/dd-trace-rb/issues/2419
3673
+ [#2420]: https://github.com/DataDog/dd-trace-rb/issues/2420
3674
+ [#2428]: https://github.com/DataDog/dd-trace-rb/issues/2428
3675
+ [#2435]: https://github.com/DataDog/dd-trace-rb/issues/2435
3676
+ [#2451]: https://github.com/DataDog/dd-trace-rb/issues/2451
3677
+ [#2453]: https://github.com/DataDog/dd-trace-rb/issues/2453
3678
+ [#2454]: https://github.com/DataDog/dd-trace-rb/issues/2454
3679
+ [#2455]: https://github.com/DataDog/dd-trace-rb/issues/2455
3680
+ [#2458]: https://github.com/DataDog/dd-trace-rb/issues/2458
3681
+ [#2459]: https://github.com/DataDog/dd-trace-rb/issues/2459
3682
+ [#2460]: https://github.com/DataDog/dd-trace-rb/issues/2460
3683
+ [#2461]: https://github.com/DataDog/dd-trace-rb/issues/2461
3684
+ [#2463]: https://github.com/DataDog/dd-trace-rb/issues/2463
3685
+ [#2464]: https://github.com/DataDog/dd-trace-rb/issues/2464
3686
+ [#2466]: https://github.com/DataDog/dd-trace-rb/issues/2466
3687
+ [#2469]: https://github.com/DataDog/dd-trace-rb/issues/2469
3688
+ [#2470]: https://github.com/DataDog/dd-trace-rb/issues/2470
3689
+ [#2473]: https://github.com/DataDog/dd-trace-rb/issues/2473
3690
+ [#2485]: https://github.com/DataDog/dd-trace-rb/issues/2485
3691
+ [#2489]: https://github.com/DataDog/dd-trace-rb/issues/2489
3692
+ [#2493]: https://github.com/DataDog/dd-trace-rb/issues/2493
3693
+ [#2496]: https://github.com/DataDog/dd-trace-rb/issues/2496
3694
+ [#2497]: https://github.com/DataDog/dd-trace-rb/issues/2497
3695
+ [#2501]: https://github.com/DataDog/dd-trace-rb/issues/2501
3696
+ [#2504]: https://github.com/DataDog/dd-trace-rb/issues/2504
3697
+ [#2512]: https://github.com/DataDog/dd-trace-rb/issues/2512
3698
+ [#2513]: https://github.com/DataDog/dd-trace-rb/issues/2513
3699
+ [#2522]: https://github.com/DataDog/dd-trace-rb/issues/2522
3700
+ [#2526]: https://github.com/DataDog/dd-trace-rb/issues/2526
3701
+ [#2530]: https://github.com/DataDog/dd-trace-rb/issues/2530
3702
+ [#2531]: https://github.com/DataDog/dd-trace-rb/issues/2531
3703
+ [#2541]: https://github.com/DataDog/dd-trace-rb/issues/2541
3704
+ [#2543]: https://github.com/DataDog/dd-trace-rb/issues/2543
3705
+ [#2557]: https://github.com/DataDog/dd-trace-rb/issues/2557
3706
+ [#2562]: https://github.com/DataDog/dd-trace-rb/issues/2562
3707
+ [#2572]: https://github.com/DataDog/dd-trace-rb/issues/2572
3708
+ [#2573]: https://github.com/DataDog/dd-trace-rb/issues/2573
3709
+ [#2576]: https://github.com/DataDog/dd-trace-rb/issues/2576
3710
+ [#2580]: https://github.com/DataDog/dd-trace-rb/issues/2580
3711
+ [#2586]: https://github.com/DataDog/dd-trace-rb/issues/2586
3712
+ [#2590]: https://github.com/DataDog/dd-trace-rb/issues/2590
3713
+ [#2591]: https://github.com/DataDog/dd-trace-rb/issues/2591
3714
+ [#2592]: https://github.com/DataDog/dd-trace-rb/issues/2592
3715
+ [#2594]: https://github.com/DataDog/dd-trace-rb/issues/2594
3716
+ [#2595]: https://github.com/DataDog/dd-trace-rb/issues/2595
3717
+ [#2598]: https://github.com/DataDog/dd-trace-rb/issues/2598
3718
+ [#2599]: https://github.com/DataDog/dd-trace-rb/issues/2599
3719
+ [#2600]: https://github.com/DataDog/dd-trace-rb/issues/2600
3720
+ [#2601]: https://github.com/DataDog/dd-trace-rb/issues/2601
3721
+ [#2605]: https://github.com/DataDog/dd-trace-rb/issues/2605
3722
+ [#2606]: https://github.com/DataDog/dd-trace-rb/issues/2606
3723
+ [#2607]: https://github.com/DataDog/dd-trace-rb/issues/2607
3724
+ [#2608]: https://github.com/DataDog/dd-trace-rb/issues/2608
3725
+ [#2612]: https://github.com/DataDog/dd-trace-rb/issues/2612
3726
+ [#2613]: https://github.com/DataDog/dd-trace-rb/issues/2613
3727
+ [#2614]: https://github.com/DataDog/dd-trace-rb/issues/2614
3728
+ [#2618]: https://github.com/DataDog/dd-trace-rb/issues/2618
3729
+ [#2619]: https://github.com/DataDog/dd-trace-rb/issues/2619
3730
+ [#2620]: https://github.com/DataDog/dd-trace-rb/issues/2620
3731
+ [#2634]: https://github.com/DataDog/dd-trace-rb/issues/2634
3732
+ [#2635]: https://github.com/DataDog/dd-trace-rb/issues/2635
3733
+ [#2642]: https://github.com/DataDog/dd-trace-rb/issues/2642
3734
+ [#2648]: https://github.com/DataDog/dd-trace-rb/issues/2648
3735
+ [#2649]: https://github.com/DataDog/dd-trace-rb/issues/2649
3736
+ [#2657]: https://github.com/DataDog/dd-trace-rb/issues/2657
3737
+ [#2659]: https://github.com/DataDog/dd-trace-rb/issues/2659
3738
+ [#2662]: https://github.com/DataDog/dd-trace-rb/issues/2662
3739
+ [#2663]: https://github.com/DataDog/dd-trace-rb/issues/2663
3740
+ [#2665]: https://github.com/DataDog/dd-trace-rb/issues/2665
3741
+ [#2668]: https://github.com/DataDog/dd-trace-rb/issues/2668
3742
+ [#2674]: https://github.com/DataDog/dd-trace-rb/issues/2674
3743
+ [#2678]: https://github.com/DataDog/dd-trace-rb/issues/2678
3744
+ [#2679]: https://github.com/DataDog/dd-trace-rb/issues/2679
3745
+ [#2686]: https://github.com/DataDog/dd-trace-rb/issues/2686
3746
+ [#2687]: https://github.com/DataDog/dd-trace-rb/issues/2687
3747
+ [#2688]: https://github.com/DataDog/dd-trace-rb/issues/2688
3748
+ [#2689]: https://github.com/DataDog/dd-trace-rb/issues/2689
3749
+ [#2690]: https://github.com/DataDog/dd-trace-rb/issues/2690
3750
+ [#2695]: https://github.com/DataDog/dd-trace-rb/issues/2695
3751
+ [#2696]: https://github.com/DataDog/dd-trace-rb/issues/2696
3752
+ [#2698]: https://github.com/DataDog/dd-trace-rb/issues/2698
3753
+ [#2701]: https://github.com/DataDog/dd-trace-rb/issues/2701
3754
+ [#2702]: https://github.com/DataDog/dd-trace-rb/issues/2702
3755
+ [#2704]: https://github.com/DataDog/dd-trace-rb/issues/2704
3756
+ [#2705]: https://github.com/DataDog/dd-trace-rb/issues/2705
3757
+ [#2710]: https://github.com/DataDog/dd-trace-rb/issues/2710
3758
+ [#2711]: https://github.com/DataDog/dd-trace-rb/issues/2711
3759
+ [#2720]: https://github.com/DataDog/dd-trace-rb/issues/2720
3760
+ [#2726]: https://github.com/DataDog/dd-trace-rb/issues/2726
3761
+ [#2727]: https://github.com/DataDog/dd-trace-rb/issues/2727
3762
+ [#2730]: https://github.com/DataDog/dd-trace-rb/issues/2730
3763
+ [#2731]: https://github.com/DataDog/dd-trace-rb/issues/2731
3764
+ [#2732]: https://github.com/DataDog/dd-trace-rb/issues/2732
3765
+ [#2733]: https://github.com/DataDog/dd-trace-rb/issues/2733
3766
+ [#2739]: https://github.com/DataDog/dd-trace-rb/issues/2739
3767
+ [#2741]: https://github.com/DataDog/dd-trace-rb/issues/2741
3768
+ [#2748]: https://github.com/DataDog/dd-trace-rb/issues/2748
3769
+ [#2756]: https://github.com/DataDog/dd-trace-rb/issues/2756
3770
+ [#2757]: https://github.com/DataDog/dd-trace-rb/issues/2757
3771
+ [#2760]: https://github.com/DataDog/dd-trace-rb/issues/2760
3772
+ [#2762]: https://github.com/DataDog/dd-trace-rb/issues/2762
3773
+ [#2765]: https://github.com/DataDog/dd-trace-rb/issues/2765
3774
+ [#2769]: https://github.com/DataDog/dd-trace-rb/issues/2769
3775
+ [#2770]: https://github.com/DataDog/dd-trace-rb/issues/2770
3776
+ [#2771]: https://github.com/DataDog/dd-trace-rb/issues/2771
3777
+ [#2773]: https://github.com/DataDog/dd-trace-rb/issues/2773
3778
+ [#2778]: https://github.com/DataDog/dd-trace-rb/issues/2778
3779
+ [#2788]: https://github.com/DataDog/dd-trace-rb/issues/2788
3780
+ [#2789]: https://github.com/DataDog/dd-trace-rb/issues/2789
3781
+ [#2794]: https://github.com/DataDog/dd-trace-rb/issues/2794
3782
+ [#2805]: https://github.com/DataDog/dd-trace-rb/issues/2805
3783
+ [#2806]: https://github.com/DataDog/dd-trace-rb/issues/2806
3784
+ [#2810]: https://github.com/DataDog/dd-trace-rb/issues/2810
3785
+ [#2814]: https://github.com/DataDog/dd-trace-rb/issues/2814
3786
+ [#2815]: https://github.com/DataDog/dd-trace-rb/issues/2815
3787
+ [#2822]: https://github.com/DataDog/dd-trace-rb/issues/2822
3788
+ [#2824]: https://github.com/DataDog/dd-trace-rb/issues/2824
3789
+ [#2826]: https://github.com/DataDog/dd-trace-rb/issues/2826
3790
+ [#2829]: https://github.com/DataDog/dd-trace-rb/issues/2829
3791
+ [#2836]: https://github.com/DataDog/dd-trace-rb/issues/2836
3792
+ [#2840]: https://github.com/DataDog/dd-trace-rb/issues/2840
3793
+ [#2848]: https://github.com/DataDog/dd-trace-rb/issues/2848
3794
+ [#2853]: https://github.com/DataDog/dd-trace-rb/issues/2853
3795
+ [#2854]: https://github.com/DataDog/dd-trace-rb/issues/2854
3796
+ [#2855]: https://github.com/DataDog/dd-trace-rb/issues/2855
3797
+ [#2856]: https://github.com/DataDog/dd-trace-rb/issues/2856
3798
+ [#2858]: https://github.com/DataDog/dd-trace-rb/issues/2858
3799
+ [#2860]: https://github.com/DataDog/dd-trace-rb/issues/2860
3800
+ [#2864]: https://github.com/DataDog/dd-trace-rb/issues/2864
3801
+ [#2866]: https://github.com/DataDog/dd-trace-rb/issues/2866
3802
+ [#2867]: https://github.com/DataDog/dd-trace-rb/issues/2867
3803
+ [#2869]: https://github.com/DataDog/dd-trace-rb/issues/2869
3804
+ [#2873]: https://github.com/DataDog/dd-trace-rb/issues/2873
3805
+ [#2874]: https://github.com/DataDog/dd-trace-rb/issues/2874
3806
+ [#2875]: https://github.com/DataDog/dd-trace-rb/issues/2875
3807
+ [#2877]: https://github.com/DataDog/dd-trace-rb/issues/2877
3808
+ [#2879]: https://github.com/DataDog/dd-trace-rb/issues/2879
3809
+ [#2882]: https://github.com/DataDog/dd-trace-rb/issues/2882
3810
+ [#2883]: https://github.com/DataDog/dd-trace-rb/issues/2883
3811
+ [#2890]: https://github.com/DataDog/dd-trace-rb/issues/2890
3812
+ [#2891]: https://github.com/DataDog/dd-trace-rb/issues/2891
3813
+ [#2895]: https://github.com/DataDog/dd-trace-rb/issues/2895
3814
+ [#2896]: https://github.com/DataDog/dd-trace-rb/issues/2896
3815
+ [#2898]: https://github.com/DataDog/dd-trace-rb/issues/2898
3816
+ [#2900]: https://github.com/DataDog/dd-trace-rb/issues/2900
3817
+ [#2903]: https://github.com/DataDog/dd-trace-rb/issues/2903
3818
+ [#2913]: https://github.com/DataDog/dd-trace-rb/issues/2913
3819
+ [#2915]: https://github.com/DataDog/dd-trace-rb/issues/2915
3820
+ [#2926]: https://github.com/DataDog/dd-trace-rb/issues/2926
3821
+ [#2928]: https://github.com/DataDog/dd-trace-rb/issues/2928
3822
+ [#2931]: https://github.com/DataDog/dd-trace-rb/issues/2931
3823
+ [#2932]: https://github.com/DataDog/dd-trace-rb/issues/2932
3824
+ [#2935]: https://github.com/DataDog/dd-trace-rb/issues/2935
3825
+ [#2939]: https://github.com/DataDog/dd-trace-rb/issues/2939
3826
+ [#2940]: https://github.com/DataDog/dd-trace-rb/issues/2940
3827
+ [#2941]: https://github.com/DataDog/dd-trace-rb/issues/2941
3828
+ [#2946]: https://github.com/DataDog/dd-trace-rb/issues/2946
3829
+ [#2948]: https://github.com/DataDog/dd-trace-rb/issues/2948
3830
+ [#2950]: https://github.com/DataDog/dd-trace-rb/issues/2950
3831
+ [#2952]: https://github.com/DataDog/dd-trace-rb/issues/2952
3832
+ [#2956]: https://github.com/DataDog/dd-trace-rb/issues/2956
3833
+ [#2957]: https://github.com/DataDog/dd-trace-rb/issues/2957
3834
+ [#2959]: https://github.com/DataDog/dd-trace-rb/issues/2959
3835
+ [#2960]: https://github.com/DataDog/dd-trace-rb/issues/2960
3836
+ [#2961]: https://github.com/DataDog/dd-trace-rb/issues/2961
3837
+ [#2962]: https://github.com/DataDog/dd-trace-rb/issues/2962
3838
+ [#2967]: https://github.com/DataDog/dd-trace-rb/issues/2967
3839
+ [#2968]: https://github.com/DataDog/dd-trace-rb/issues/2968
3840
+ [#2971]: https://github.com/DataDog/dd-trace-rb/issues/2971
3841
+ [#2972]: https://github.com/DataDog/dd-trace-rb/issues/2972
3842
+ [#2973]: https://github.com/DataDog/dd-trace-rb/issues/2973
3843
+ [#2974]: https://github.com/DataDog/dd-trace-rb/issues/2974
3844
+ [#2975]: https://github.com/DataDog/dd-trace-rb/issues/2975
3845
+ [#2977]: https://github.com/DataDog/dd-trace-rb/issues/2977
3846
+ [#2978]: https://github.com/DataDog/dd-trace-rb/issues/2978
3847
+ [#2982]: https://github.com/DataDog/dd-trace-rb/issues/2982
3848
+ [#2983]: https://github.com/DataDog/dd-trace-rb/issues/2983
3849
+ [#2988]: https://github.com/DataDog/dd-trace-rb/issues/2988
3850
+ [#2992]: https://github.com/DataDog/dd-trace-rb/issues/2992
3851
+ [#2993]: https://github.com/DataDog/dd-trace-rb/issues/2993
3852
+ [#2994]: https://github.com/DataDog/dd-trace-rb/issues/2994
3853
+ [#2999]: https://github.com/DataDog/dd-trace-rb/issues/2999
3854
+ [#3005]: https://github.com/DataDog/dd-trace-rb/issues/3005
3855
+ [#3007]: https://github.com/DataDog/dd-trace-rb/issues/3007
3856
+ [#3011]: https://github.com/DataDog/dd-trace-rb/issues/3011
3857
+ [#3018]: https://github.com/DataDog/dd-trace-rb/issues/3018
3858
+ [#3019]: https://github.com/DataDog/dd-trace-rb/issues/3019
3859
+ [#3020]: https://github.com/DataDog/dd-trace-rb/issues/3020
3860
+ [#3022]: https://github.com/DataDog/dd-trace-rb/issues/3022
3861
+ [#3025]: https://github.com/DataDog/dd-trace-rb/issues/3025
3862
+ [#3033]: https://github.com/DataDog/dd-trace-rb/issues/3033
3863
+ [#3037]: https://github.com/DataDog/dd-trace-rb/issues/3037
3864
+ [#3038]: https://github.com/DataDog/dd-trace-rb/issues/3038
3865
+ [#3039]: https://github.com/DataDog/dd-trace-rb/issues/3039
3866
+ [#3041]: https://github.com/DataDog/dd-trace-rb/issues/3041
3867
+ [#3045]: https://github.com/DataDog/dd-trace-rb/issues/3045
3868
+ [#3051]: https://github.com/DataDog/dd-trace-rb/issues/3051
3869
+ [#3054]: https://github.com/DataDog/dd-trace-rb/issues/3054
3870
+ [#3056]: https://github.com/DataDog/dd-trace-rb/issues/3056
3871
+ [#3057]: https://github.com/DataDog/dd-trace-rb/issues/3057
3872
+ [#3060]: https://github.com/DataDog/dd-trace-rb/issues/3060
3873
+ [#3061]: https://github.com/DataDog/dd-trace-rb/issues/3061
3874
+ [#3062]: https://github.com/DataDog/dd-trace-rb/issues/3062
3875
+ [#3065]: https://github.com/DataDog/dd-trace-rb/issues/3065
3876
+ [#3070]: https://github.com/DataDog/dd-trace-rb/issues/3070
3877
+ [#3074]: https://github.com/DataDog/dd-trace-rb/issues/3074
3878
+ [#3080]: https://github.com/DataDog/dd-trace-rb/issues/3080
3879
+ [#3085]: https://github.com/DataDog/dd-trace-rb/issues/3085
3880
+ [#3086]: https://github.com/DataDog/dd-trace-rb/issues/3086
3881
+ [#3087]: https://github.com/DataDog/dd-trace-rb/issues/3087
3882
+ [#3091]: https://github.com/DataDog/dd-trace-rb/issues/3091
3883
+ [#3095]: https://github.com/DataDog/dd-trace-rb/issues/3095
3884
+ [#3096]: https://github.com/DataDog/dd-trace-rb/issues/3096
3885
+ [#3099]: https://github.com/DataDog/dd-trace-rb/issues/3099
3886
+ [#3100]: https://github.com/DataDog/dd-trace-rb/issues/3100
3887
+ [#3102]: https://github.com/DataDog/dd-trace-rb/issues/3102
3888
+ [#3103]: https://github.com/DataDog/dd-trace-rb/issues/3103
3889
+ [#3104]: https://github.com/DataDog/dd-trace-rb/issues/3104
3890
+ [#3106]: https://github.com/DataDog/dd-trace-rb/issues/3106
3891
+ [#3107]: https://github.com/DataDog/dd-trace-rb/issues/3107
3892
+ [#3109]: https://github.com/DataDog/dd-trace-rb/issues/3109
3893
+ [#3127]: https://github.com/DataDog/dd-trace-rb/issues/3127
3894
+ [#3128]: https://github.com/DataDog/dd-trace-rb/issues/3128
3895
+ [#3131]: https://github.com/DataDog/dd-trace-rb/issues/3131
3896
+ [#3132]: https://github.com/DataDog/dd-trace-rb/issues/3132
3897
+ [#3139]: https://github.com/DataDog/dd-trace-rb/issues/3139
3898
+ [#3140]: https://github.com/DataDog/dd-trace-rb/issues/3140
3899
+ [#3145]: https://github.com/DataDog/dd-trace-rb/issues/3145
3900
+ [#3148]: https://github.com/DataDog/dd-trace-rb/issues/3148
3901
+ [#3150]: https://github.com/DataDog/dd-trace-rb/issues/3150
3902
+ [#3152]: https://github.com/DataDog/dd-trace-rb/issues/3152
3903
+ [#3153]: https://github.com/DataDog/dd-trace-rb/issues/3153
3904
+ [#3158]: https://github.com/DataDog/dd-trace-rb/issues/3158
3905
+ [#3162]: https://github.com/DataDog/dd-trace-rb/issues/3162
3906
+ [#3163]: https://github.com/DataDog/dd-trace-rb/issues/3163
3907
+ [#3166]: https://github.com/DataDog/dd-trace-rb/issues/3166
3908
+ [#3167]: https://github.com/DataDog/dd-trace-rb/issues/3167
3909
+ [#3169]: https://github.com/DataDog/dd-trace-rb/issues/3169
3910
+ [#3171]: https://github.com/DataDog/dd-trace-rb/issues/3171
3911
+ [#3172]: https://github.com/DataDog/dd-trace-rb/issues/3172
3912
+ [#3176]: https://github.com/DataDog/dd-trace-rb/issues/3176
3913
+ [#3177]: https://github.com/DataDog/dd-trace-rb/issues/3177
3914
+ [#3183]: https://github.com/DataDog/dd-trace-rb/issues/3183
3915
+ [#3186]: https://github.com/DataDog/dd-trace-rb/issues/3186
3916
+ [#3188]: https://github.com/DataDog/dd-trace-rb/issues/3188
3917
+ [#3189]: https://github.com/DataDog/dd-trace-rb/issues/3189
3918
+ [#3190]: https://github.com/DataDog/dd-trace-rb/issues/3190
3919
+ [#3197]: https://github.com/DataDog/dd-trace-rb/issues/3197
3920
+ [#3204]: https://github.com/DataDog/dd-trace-rb/issues/3204
3921
+ [#3206]: https://github.com/DataDog/dd-trace-rb/issues/3206
3922
+ [#3207]: https://github.com/DataDog/dd-trace-rb/issues/3207
3923
+ [#3223]: https://github.com/DataDog/dd-trace-rb/issues/3223
3924
+ [#3229]: https://github.com/DataDog/dd-trace-rb/issues/3229
3925
+ [#3234]: https://github.com/DataDog/dd-trace-rb/issues/3234
3926
+ [#3235]: https://github.com/DataDog/dd-trace-rb/issues/3235
3927
+ [#3240]: https://github.com/DataDog/dd-trace-rb/issues/3240
3928
+ [#3242]: https://github.com/DataDog/dd-trace-rb/issues/3242
3929
+ [#3248]: https://github.com/DataDog/dd-trace-rb/issues/3248
3930
+ [#3252]: https://github.com/DataDog/dd-trace-rb/issues/3252
3931
+ [#3255]: https://github.com/DataDog/dd-trace-rb/issues/3255
3932
+ [#3259]: https://github.com/DataDog/dd-trace-rb/issues/3259
3933
+ [#3262]: https://github.com/DataDog/dd-trace-rb/issues/3262
3934
+ [#3266]: https://github.com/DataDog/dd-trace-rb/issues/3266
3935
+ [#3267]: https://github.com/DataDog/dd-trace-rb/issues/3267
3936
+ [#3270]: https://github.com/DataDog/dd-trace-rb/issues/3270
3937
+ [#3271]: https://github.com/DataDog/dd-trace-rb/issues/3271
3938
+ [#3273]: https://github.com/DataDog/dd-trace-rb/issues/3273
3939
+ [#3279]: https://github.com/DataDog/dd-trace-rb/issues/3279
3940
+ [#3280]: https://github.com/DataDog/dd-trace-rb/issues/3280
3941
+ [#3281]: https://github.com/DataDog/dd-trace-rb/issues/3281
3942
+ [#3284]: https://github.com/DataDog/dd-trace-rb/issues/3284
3943
+ [#3286]: https://github.com/DataDog/dd-trace-rb/issues/3286
3944
+ [#3287]: https://github.com/DataDog/dd-trace-rb/issues/3287
3945
+ [#3289]: https://github.com/DataDog/dd-trace-rb/issues/3289
3946
+ [#3303]: https://github.com/DataDog/dd-trace-rb/issues/3303
3947
+ [#3307]: https://github.com/DataDog/dd-trace-rb/issues/3307
3948
+ [#3308]: https://github.com/DataDog/dd-trace-rb/issues/3308
3949
+ [#3310]: https://github.com/DataDog/dd-trace-rb/issues/3310
3950
+ [#3313]: https://github.com/DataDog/dd-trace-rb/issues/3313
3951
+ [#3316]: https://github.com/DataDog/dd-trace-rb/issues/3316
3952
+ [#3317]: https://github.com/DataDog/dd-trace-rb/issues/3317
3953
+ [#3320]: https://github.com/DataDog/dd-trace-rb/issues/3320
3954
+ [#3328]: https://github.com/DataDog/dd-trace-rb/issues/3328
3955
+ [#3329]: https://github.com/DataDog/dd-trace-rb/issues/3329
3956
+ [#3333]: https://github.com/DataDog/dd-trace-rb/issues/3333
3957
+ [#3349]: https://github.com/DataDog/dd-trace-rb/issues/3349
3958
+ [#3352]: https://github.com/DataDog/dd-trace-rb/issues/3352
3959
+ [#3354]: https://github.com/DataDog/dd-trace-rb/issues/3354
3960
+ [#3356]: https://github.com/DataDog/dd-trace-rb/issues/3356
3961
+ [#3360]: https://github.com/DataDog/dd-trace-rb/issues/3360
3962
+ [#3361]: https://github.com/DataDog/dd-trace-rb/issues/3361
3963
+ [#3362]: https://github.com/DataDog/dd-trace-rb/issues/3362
3964
+ [#3365]: https://github.com/DataDog/dd-trace-rb/issues/3365
3965
+ [#3366]: https://github.com/DataDog/dd-trace-rb/issues/3366
3966
+ [#3373]: https://github.com/DataDog/dd-trace-rb/issues/3373
3967
+ [#3374]: https://github.com/DataDog/dd-trace-rb/issues/3374
2994
3968
  [@AdrianLC]: https://github.com/AdrianLC
2995
3969
  [@Azure7111]: https://github.com/Azure7111
2996
3970
  [@BabyGroot]: https://github.com/BabyGroot
@@ -2998,11 +3972,13 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
2998
3972
  [@Drowze]: https://github.com/Drowze
2999
3973
  [@EpiFouloux]: https://github.com/EpiFouloux
3000
3974
  [@EvNomad]: https://github.com/EvNomad
3975
+ [@HeyNonster]: https://github.com/HeyNonster
3001
3976
  [@HoneyryderChuck]: https://github.com/HoneyryderChuck
3002
3977
  [@JamesHarker]: https://github.com/JamesHarker
3003
3978
  [@Jared-Prime]: https://github.com/Jared-Prime
3004
3979
  [@Joas1988]: https://github.com/Joas1988
3005
3980
  [@JustSnow]: https://github.com/JustSnow
3981
+ [@KJTsanaktsidis]: https://github.com/KJTsanaktsidis
3006
3982
  [@KieranP]: https://github.com/KieranP
3007
3983
  [@MMartyn]: https://github.com/MMartyn
3008
3984
  [@NobodysNightmare]: https://github.com/NobodysNightmare
@@ -3027,15 +4003,19 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
3027
4003
  [@bheemreddy181]: https://github.com/bheemreddy181
3028
4004
  [@blaines]: https://github.com/blaines
3029
4005
  [@brafales]: https://github.com/brafales
4006
+ [@bravehager]: https://github.com/bravehager
3030
4007
  [@bzf]: https://github.com/bzf
3031
4008
  [@callumj]: https://github.com/callumj
4009
+ [@caramcc]: https://github.com/caramcc
3032
4010
  [@carlallen]: https://github.com/carlallen
3033
4011
  [@chychkan]: https://github.com/chychkan
3034
4012
  [@cjford]: https://github.com/cjford
3035
4013
  [@ck3g]: https://github.com/ck3g
3036
4014
  [@components]: https://github.com/components
4015
+ [@coneill-enhance]: https://github.com/coneill-enhance
3037
4016
  [@cswatt]: https://github.com/cswatt
3038
4017
  [@cwoodcox]: https://github.com/cwoodcox
4018
+ [@danhodge]: https://github.com/danhodge
3039
4019
  [@dasch]: https://github.com/dasch
3040
4020
  [@dim]: https://github.com/dim
3041
4021
  [@dirk]: https://github.com/dirk
@@ -3066,6 +4046,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
3066
4046
  [@hs-bguven]: https://github.com/hs-bguven
3067
4047
  [@illdelph]: https://github.com/illdelph
3068
4048
  [@ioquatix]: https://github.com/ioquatix
4049
+ [@ixti]: https://github.com/ixti
3069
4050
  [@jamiehodge]: https://github.com/jamiehodge
3070
4051
  [@janz93]: https://github.com/janz93
3071
4052
  [@jeffjo]: https://github.com/jeffjo
@@ -3109,9 +4090,11 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
3109
4090
  [@renchap]: https://github.com/renchap
3110
4091
  [@ricbartm]: https://github.com/ricbartm
3111
4092
  [@roccoblues]: https://github.com/roccoblues
4093
+ [@rqz13]: https://github.com/rqz13
3112
4094
  [@saturnflyer]: https://github.com/saturnflyer
3113
4095
  [@sco11morgan]: https://github.com/sco11morgan
3114
4096
  [@senny]: https://github.com/senny
4097
+ [@seuros]: https://github.com/seuros
3115
4098
  [@shayonj]: https://github.com/shayonj
3116
4099
  [@sinsoku]: https://github.com/sinsoku
3117
4100
  [@skcc321]: https://github.com/skcc321
@@ -3131,5 +4114,6 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
3131
4114
  [@vramaiah]: https://github.com/vramaiah
3132
4115
  [@walterking]: https://github.com/walterking
3133
4116
  [@y-yagi]: https://github.com/y-yagi
4117
+ [@yujideveloper]: https://github.com/yujideveloper
3134
4118
  [@yukimurasawa]: https://github.com/yukimurasawa
3135
4119
  [@zachmccormick]: https://github.com/zachmccormick