datadog 2.38.0 → 2.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (805) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -1
  3. data/bin/ddprofrb +4 -4
  4. data/ext/datadog_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +77 -1
  5. data/ext/datadog_profiling_native_extension/extconf.rb +1 -1
  6. data/ext/datadog_profiling_native_extension/setup_signal_handler.c +2 -0
  7. data/ext/libdatadog_api/extconf.rb +24 -24
  8. data/ext/libdatadog_api/feature_flags.c +26 -0
  9. data/ext/libdatadog_extconf_helpers.rb +9 -9
  10. data/lib/datadog/ai_guard/api_client.rb +2 -2
  11. data/lib/datadog/ai_guard/component.rb +10 -10
  12. data/lib/datadog/appsec/actions_handler/serializable_backtrace.rb +16 -16
  13. data/lib/datadog/appsec/actions_handler.rb +6 -6
  14. data/lib/datadog/appsec/anonymizer.rb +1 -1
  15. data/lib/datadog/appsec/api_security/endpoint_collection/grape_route_serializer.rb +1 -1
  16. data/lib/datadog/appsec/api_security/endpoint_collection/rails_collector.rb +6 -6
  17. data/lib/datadog/appsec/api_security/endpoint_collection/sinatra_route_serializer.rb +1 -1
  18. data/lib/datadog/appsec/api_security/route_extractor.rb +11 -11
  19. data/lib/datadog/appsec/api_security/sampler.rb +5 -5
  20. data/lib/datadog/appsec/api_security.rb +1 -1
  21. data/lib/datadog/appsec/assets.rb +7 -7
  22. data/lib/datadog/appsec/autoload.rb +3 -3
  23. data/lib/datadog/appsec/component.rb +15 -15
  24. data/lib/datadog/appsec/compressed_json.rb +6 -6
  25. data/lib/datadog/appsec/configuration.rb +59 -59
  26. data/lib/datadog/appsec/context.rb +6 -6
  27. data/lib/datadog/appsec/contrib/active_record/instrumentation.rb +6 -6
  28. data/lib/datadog/appsec/contrib/active_record/integration.rb +4 -4
  29. data/lib/datadog/appsec/contrib/active_record/patcher.rb +4 -4
  30. data/lib/datadog/appsec/contrib/aws_lambda/gateway/watcher.rb +7 -7
  31. data/lib/datadog/appsec/contrib/aws_lambda/integration.rb +2 -2
  32. data/lib/datadog/appsec/contrib/aws_lambda/patcher.rb +2 -2
  33. data/lib/datadog/appsec/contrib/aws_lambda/waf_addresses.rb +36 -34
  34. data/lib/datadog/appsec/contrib/devise/data_extractor.rb +3 -3
  35. data/lib/datadog/appsec/contrib/devise/ext.rb +20 -20
  36. data/lib/datadog/appsec/contrib/devise/integration.rb +4 -4
  37. data/lib/datadog/appsec/contrib/devise/patcher.rb +7 -7
  38. data/lib/datadog/appsec/contrib/devise/patches/signin_tracking_patch.rb +12 -12
  39. data/lib/datadog/appsec/contrib/devise/patches/signup_tracking_patch.rb +8 -8
  40. data/lib/datadog/appsec/contrib/devise/tracking_middleware.rb +24 -9
  41. data/lib/datadog/appsec/contrib/excon/integration.rb +4 -4
  42. data/lib/datadog/appsec/contrib/excon/patcher.rb +1 -1
  43. data/lib/datadog/appsec/contrib/excon/ssrf_detection_middleware.rb +26 -26
  44. data/lib/datadog/appsec/contrib/faraday/integration.rb +4 -4
  45. data/lib/datadog/appsec/contrib/faraday/patcher.rb +4 -4
  46. data/lib/datadog/appsec/contrib/faraday/ssrf_detection_middleware.rb +22 -22
  47. data/lib/datadog/appsec/contrib/graphql/appsec_trace.rb +4 -4
  48. data/lib/datadog/appsec/contrib/graphql/gateway/multiplex.rb +2 -2
  49. data/lib/datadog/appsec/contrib/graphql/gateway/watcher.rb +7 -7
  50. data/lib/datadog/appsec/contrib/graphql/integration.rb +9 -9
  51. data/lib/datadog/appsec/contrib/graphql/patcher.rb +3 -3
  52. data/lib/datadog/appsec/contrib/rack/buffered_input.rb +1 -1
  53. data/lib/datadog/appsec/contrib/rack/ext.rb +29 -29
  54. data/lib/datadog/appsec/contrib/rack/gateway/request.rb +14 -18
  55. data/lib/datadog/appsec/contrib/rack/gateway/response.rb +1 -1
  56. data/lib/datadog/appsec/contrib/rack/gateway/watcher.rb +24 -24
  57. data/lib/datadog/appsec/contrib/rack/input_peeker.rb +6 -6
  58. data/lib/datadog/appsec/contrib/rack/integration.rb +6 -6
  59. data/lib/datadog/appsec/contrib/rack/patcher.rb +2 -2
  60. data/lib/datadog/appsec/contrib/rack/request_body_middleware.rb +5 -5
  61. data/lib/datadog/appsec/contrib/rack/request_middleware.rb +26 -26
  62. data/lib/datadog/appsec/contrib/rack/response_body.rb +1 -1
  63. data/lib/datadog/appsec/contrib/rails/gateway/request.rb +10 -10
  64. data/lib/datadog/appsec/contrib/rails/gateway/watcher.rb +10 -10
  65. data/lib/datadog/appsec/contrib/rails/integration.rb +5 -5
  66. data/lib/datadog/appsec/contrib/rails/patcher.rb +17 -17
  67. data/lib/datadog/appsec/contrib/rails/patches/process_action_patch.rb +2 -2
  68. data/lib/datadog/appsec/contrib/rails/patches/render_to_body_patch.rb +3 -3
  69. data/lib/datadog/appsec/contrib/rails/request.rb +3 -3
  70. data/lib/datadog/appsec/contrib/rest_client/integration.rb +5 -5
  71. data/lib/datadog/appsec/contrib/rest_client/patcher.rb +1 -1
  72. data/lib/datadog/appsec/contrib/rest_client/request_ssrf_detection_patch.rb +23 -23
  73. data/lib/datadog/appsec/contrib/sinatra/gateway/request.rb +1 -1
  74. data/lib/datadog/appsec/contrib/sinatra/gateway/route_params.rb +1 -1
  75. data/lib/datadog/appsec/contrib/sinatra/gateway/watcher.rb +15 -15
  76. data/lib/datadog/appsec/contrib/sinatra/integration.rb +5 -5
  77. data/lib/datadog/appsec/contrib/sinatra/patcher.rb +11 -11
  78. data/lib/datadog/appsec/contrib/sinatra/patches/json_patch.rb +3 -3
  79. data/lib/datadog/appsec/counter_sampler.rb +1 -1
  80. data/lib/datadog/appsec/event.rb +14 -14
  81. data/lib/datadog/appsec/ext.rb +11 -11
  82. data/lib/datadog/appsec/extensions.rb +2 -2
  83. data/lib/datadog/appsec/instrumentation/gateway.rb +1 -1
  84. data/lib/datadog/appsec/metrics/exporter.rb +8 -8
  85. data/lib/datadog/appsec/metrics/telemetry.rb +7 -7
  86. data/lib/datadog/appsec/metrics/telemetry_exporter.rb +4 -4
  87. data/lib/datadog/appsec/metrics.rb +4 -4
  88. data/lib/datadog/appsec/monitor/gateway/watcher.rb +16 -12
  89. data/lib/datadog/appsec/monitor.rb +1 -1
  90. data/lib/datadog/appsec/processor/rule_loader.rb +26 -26
  91. data/lib/datadog/appsec/rate_limiter.rb +1 -1
  92. data/lib/datadog/appsec/remote.rb +6 -6
  93. data/lib/datadog/appsec/response.rb +21 -21
  94. data/lib/datadog/appsec/route_normalizer/rails_route_pattern.rb +11 -11
  95. data/lib/datadog/appsec/route_normalizer/route_pattern.rb +15 -15
  96. data/lib/datadog/appsec/route_normalizer/route_text.rb +3 -3
  97. data/lib/datadog/appsec/route_normalizer.rb +15 -15
  98. data/lib/datadog/appsec/security_engine/engine.rb +37 -37
  99. data/lib/datadog/appsec/security_engine/runner.rb +2 -2
  100. data/lib/datadog/appsec/security_event.rb +2 -2
  101. data/lib/datadog/appsec/utils/http/body.rb +11 -8
  102. data/lib/datadog/appsec/utils/http/body_reader.rb +1 -1
  103. data/lib/datadog/appsec/utils/http/media_range.rb +15 -15
  104. data/lib/datadog/appsec/utils/http/media_type.rb +4 -4
  105. data/lib/datadog/appsec/utils/http/url_encoded.rb +80 -25
  106. data/lib/datadog/appsec.rb +16 -16
  107. data/lib/datadog/auto_instrument.rb +2 -2
  108. data/lib/datadog/core/buffer/cruby.rb +1 -1
  109. data/lib/datadog/core/buffer/thread_safe.rb +1 -1
  110. data/lib/datadog/core/configuration/agent_settings.rb +1 -1
  111. data/lib/datadog/core/configuration/agent_settings_resolver.rb +15 -15
  112. data/lib/datadog/core/configuration/base.rb +2 -2
  113. data/lib/datadog/core/configuration/components.rb +33 -29
  114. data/lib/datadog/core/configuration/config_helper.rb +3 -3
  115. data/lib/datadog/core/configuration/deprecations.rb +6 -6
  116. data/lib/datadog/core/configuration/ext.rb +11 -11
  117. data/lib/datadog/core/configuration/option.rb +16 -16
  118. data/lib/datadog/core/configuration/option_definition.rb +4 -4
  119. data/lib/datadog/core/configuration/options.rb +1 -1
  120. data/lib/datadog/core/configuration/settings.rb +58 -58
  121. data/lib/datadog/core/configuration/stable_config.rb +1 -1
  122. data/lib/datadog/core/configuration/supported_configurations.rb +2 -1
  123. data/lib/datadog/core/configuration.rb +8 -8
  124. data/lib/datadog/core/contrib/rails/railtie.rb +3 -3
  125. data/lib/datadog/core/crashtracking/component.rb +9 -9
  126. data/lib/datadog/core/crashtracking/tag_builder.rb +5 -5
  127. data/lib/datadog/core/deprecations.rb +1 -1
  128. data/lib/datadog/core/diagnostics/environment_logger.rb +6 -6
  129. data/lib/datadog/core/diagnostics/health.rb +2 -2
  130. data/lib/datadog/core/encoding.rb +4 -4
  131. data/lib/datadog/core/environment/agent_info.rb +2 -2
  132. data/lib/datadog/core/environment/cgroup.rb +4 -4
  133. data/lib/datadog/core/environment/container.rb +9 -9
  134. data/lib/datadog/core/environment/execution.rb +3 -3
  135. data/lib/datadog/core/environment/ext.rb +18 -18
  136. data/lib/datadog/core/environment/git.rb +2 -2
  137. data/lib/datadog/core/environment/identity.rb +10 -10
  138. data/lib/datadog/core/environment/platform.rb +8 -8
  139. data/lib/datadog/core/environment/process.rb +3 -3
  140. data/lib/datadog/core/environment/socket.rb +2 -2
  141. data/lib/datadog/core/environment/variable_helpers.rb +1 -1
  142. data/lib/datadog/core/error.rb +5 -5
  143. data/lib/datadog/core/evp.rb +2 -2
  144. data/lib/datadog/core/extensions.rb +1 -1
  145. data/lib/datadog/core/feature_flags.rb +2 -2
  146. data/lib/datadog/core/git/ext.rb +4 -4
  147. data/lib/datadog/core/logger.rb +3 -3
  148. data/lib/datadog/core/logging/ext.rb +1 -1
  149. data/lib/datadog/core/metrics/client.rb +20 -20
  150. data/lib/datadog/core/metrics/ext.rb +5 -5
  151. data/lib/datadog/core/metrics/logging.rb +2 -2
  152. data/lib/datadog/core/metrics/options.rb +3 -3
  153. data/lib/datadog/core/pin.rb +1 -1
  154. data/lib/datadog/core/process_discovery.rb +8 -8
  155. data/lib/datadog/core/rate_limiter.rb +1 -1
  156. data/lib/datadog/core/remote/client/capabilities.rb +36 -20
  157. data/lib/datadog/core/remote/client.rb +16 -16
  158. data/lib/datadog/core/remote/component.rb +20 -12
  159. data/lib/datadog/core/remote/configuration/content.rb +3 -3
  160. data/lib/datadog/core/remote/configuration/digest.rb +1 -1
  161. data/lib/datadog/core/remote/configuration/path.rb +9 -9
  162. data/lib/datadog/core/remote/configuration/repository.rb +2 -2
  163. data/lib/datadog/core/remote/configuration/target.rb +9 -9
  164. data/lib/datadog/core/remote/configuration.rb +4 -4
  165. data/lib/datadog/core/remote/ext.rb +3 -3
  166. data/lib/datadog/core/remote/negotiation.rb +1 -1
  167. data/lib/datadog/core/remote/tie/tracing.rb +7 -7
  168. data/lib/datadog/core/remote/transport/config.rb +4 -4
  169. data/lib/datadog/core/remote/transport/http/config.rb +7 -7
  170. data/lib/datadog/core/remote/transport/http/negotiation.rb +4 -4
  171. data/lib/datadog/core/remote/transport/http.rb +10 -10
  172. data/lib/datadog/core/remote/transport/negotiation.rb +3 -3
  173. data/lib/datadog/core/remote/worker.rb +5 -5
  174. data/lib/datadog/core/runtime/ext.rb +22 -22
  175. data/lib/datadog/core/runtime/metrics.rb +9 -9
  176. data/lib/datadog/core/tag_builder.rb +18 -18
  177. data/lib/datadog/core/tag_normalizer.rb +7 -7
  178. data/lib/datadog/core/telemetry/component.rb +13 -13
  179. data/lib/datadog/core/telemetry/emitter.rb +4 -4
  180. data/lib/datadog/core/telemetry/event/app_client_configuration_change.rb +5 -5
  181. data/lib/datadog/core/telemetry/event/app_closing.rb +2 -2
  182. data/lib/datadog/core/telemetry/event/app_dependencies_loaded.rb +2 -2
  183. data/lib/datadog/core/telemetry/event/app_endpoints_loaded.rb +2 -2
  184. data/lib/datadog/core/telemetry/event/app_extended_heartbeat.rb +2 -2
  185. data/lib/datadog/core/telemetry/event/app_heartbeat.rb +2 -2
  186. data/lib/datadog/core/telemetry/event/app_integrations_change.rb +2 -2
  187. data/lib/datadog/core/telemetry/event/app_started.rb +33 -33
  188. data/lib/datadog/core/telemetry/event/base.rb +1 -1
  189. data/lib/datadog/core/telemetry/event/distributions.rb +2 -2
  190. data/lib/datadog/core/telemetry/event/generate_metrics.rb +2 -2
  191. data/lib/datadog/core/telemetry/event/log.rb +4 -4
  192. data/lib/datadog/core/telemetry/event/message_batch.rb +1 -1
  193. data/lib/datadog/core/telemetry/event/synth_app_client_configuration_change.rb +2 -2
  194. data/lib/datadog/core/telemetry/event.rb +16 -16
  195. data/lib/datadog/core/telemetry/ext.rb +11 -11
  196. data/lib/datadog/core/telemetry/logger.rb +1 -1
  197. data/lib/datadog/core/telemetry/logging.rb +5 -5
  198. data/lib/datadog/core/telemetry/metric.rb +7 -7
  199. data/lib/datadog/core/telemetry/metrics_collection.rb +2 -2
  200. data/lib/datadog/core/telemetry/metrics_manager.rb +1 -1
  201. data/lib/datadog/core/telemetry/request.rb +4 -4
  202. data/lib/datadog/core/telemetry/transport/http/telemetry.rb +14 -14
  203. data/lib/datadog/core/telemetry/transport/http.rb +7 -7
  204. data/lib/datadog/core/telemetry/transport/telemetry.rb +3 -3
  205. data/lib/datadog/core/telemetry/worker.rb +6 -6
  206. data/lib/datadog/core/transport/ext.rb +14 -14
  207. data/lib/datadog/core/transport/http/adapters/net.rb +4 -4
  208. data/lib/datadog/core/transport/http/adapters/test.rb +1 -1
  209. data/lib/datadog/core/transport/http/adapters/unix_socket.rb +4 -4
  210. data/lib/datadog/core/transport/http/api/endpoint.rb +1 -1
  211. data/lib/datadog/core/transport/http/api/map.rb +1 -1
  212. data/lib/datadog/core/transport/http/builder.rb +5 -5
  213. data/lib/datadog/core/transport/http/client.rb +2 -2
  214. data/lib/datadog/core/transport/http/response.rb +1 -1
  215. data/lib/datadog/core/transport/http.rb +8 -8
  216. data/lib/datadog/core/transport/transport.rb +1 -1
  217. data/lib/datadog/core/utils/at_fork_monkey_patch.rb +2 -2
  218. data/lib/datadog/core/utils/base64_codec.rb +3 -3
  219. data/lib/datadog/core/utils/duration.rb +1 -1
  220. data/lib/datadog/core/utils/forking.rb +2 -2
  221. data/lib/datadog/core/utils/lru_cache.rb +3 -3
  222. data/lib/datadog/core/utils/network.rb +11 -11
  223. data/lib/datadog/core/utils/only_once_successful.rb +1 -1
  224. data/lib/datadog/core/utils/safe_dup.rb +2 -1
  225. data/lib/datadog/core/utils/spawn_monkey_patch.rb +2 -2
  226. data/lib/datadog/core/utils/url.rb +1 -1
  227. data/lib/datadog/core/utils.rb +4 -4
  228. data/lib/datadog/core/workers/async.rb +1 -1
  229. data/lib/datadog/core/workers/polling.rb +2 -2
  230. data/lib/datadog/core/workers/runtime_metrics.rb +4 -4
  231. data/lib/datadog/core.rb +4 -4
  232. data/lib/datadog/data_streams/configuration.rb +3 -3
  233. data/lib/datadog/data_streams/ext.rb +1 -1
  234. data/lib/datadog/data_streams/extensions.rb +2 -2
  235. data/lib/datadog/data_streams/pathway_context.rb +5 -5
  236. data/lib/datadog/data_streams/processor.rb +52 -52
  237. data/lib/datadog/data_streams/transport/http/stats.rb +5 -5
  238. data/lib/datadog/data_streams/transport/http.rb +5 -5
  239. data/lib/datadog/data_streams/transport/stats.rb +7 -7
  240. data/lib/datadog/data_streams.rb +5 -5
  241. data/lib/datadog/di/base.rb +4 -4
  242. data/lib/datadog/di/boot.rb +25 -25
  243. data/lib/datadog/di/code_tracker.rb +6 -6
  244. data/lib/datadog/di/component.rb +11 -3
  245. data/lib/datadog/di/configuration.rb +2 -2
  246. data/lib/datadog/di/contrib/railtie.rb +1 -1
  247. data/lib/datadog/di/contrib.rb +5 -5
  248. data/lib/datadog/di/el/compiler.rb +25 -25
  249. data/lib/datadog/di/el.rb +3 -3
  250. data/lib/datadog/di/instrumenter.rb +19 -9
  251. data/lib/datadog/di/logger.rb +1 -1
  252. data/lib/datadog/di/preload.rb +1 -1
  253. data/lib/datadog/di/probe_builder.rb +22 -22
  254. data/lib/datadog/di/probe_file_loader/railtie.rb +1 -1
  255. data/lib/datadog/di/probe_file_loader.rb +5 -5
  256. data/lib/datadog/di/probe_manager.rb +1 -1
  257. data/lib/datadog/di/probe_notification_builder.rb +16 -16
  258. data/lib/datadog/di/probe_notifier_worker.rb +6 -6
  259. data/lib/datadog/di/probe_repository.rb +1 -1
  260. data/lib/datadog/di/remote.rb +3 -3
  261. data/lib/datadog/di/serializer.rb +13 -13
  262. data/lib/datadog/di/transport/diagnostics.rb +5 -5
  263. data/lib/datadog/di/transport/http/diagnostics.rb +3 -3
  264. data/lib/datadog/di/transport/http/input.rb +2 -2
  265. data/lib/datadog/di/transport/http.rb +10 -10
  266. data/lib/datadog/di/transport/input.rb +9 -9
  267. data/lib/datadog/di/utils.rb +4 -4
  268. data/lib/datadog/di.rb +5 -5
  269. data/lib/datadog/error_tracking/collector.rb +2 -2
  270. data/lib/datadog/error_tracking/component.rb +12 -12
  271. data/lib/datadog/error_tracking/configuration.rb +2 -2
  272. data/lib/datadog/error_tracking/ext.rb +7 -7
  273. data/lib/datadog/error_tracking/extensions.rb +2 -2
  274. data/lib/datadog/error_tracking/filters.rb +4 -4
  275. data/lib/datadog/error_tracking.rb +6 -6
  276. data/lib/datadog/kit/appsec/events/v2.rb +39 -39
  277. data/lib/datadog/kit/appsec/events.rb +25 -25
  278. data/lib/datadog/kit/enable_core_dumps.rb +2 -2
  279. data/lib/datadog/kit/identity.rb +18 -18
  280. data/lib/datadog/kit/tracing/method_tracer.rb +7 -7
  281. data/lib/datadog/kit.rb +1 -1
  282. data/lib/datadog/open_feature/component.rb +31 -22
  283. data/lib/datadog/open_feature/configuration.rb +15 -2
  284. data/lib/datadog/open_feature/evaluation_engine.rb +7 -7
  285. data/lib/datadog/open_feature/exposures/buffer.rb +1 -1
  286. data/lib/datadog/open_feature/exposures/deduplicator.rb +1 -1
  287. data/lib/datadog/open_feature/exposures/event.rb +2 -2
  288. data/lib/datadog/open_feature/exposures/reporter.rb +3 -3
  289. data/lib/datadog/open_feature/exposures/worker.rb +6 -6
  290. data/lib/datadog/open_feature/ext.rb +13 -8
  291. data/lib/datadog/open_feature/flag_evaluation/aggregator.rb +8 -8
  292. data/lib/datadog/open_feature/flag_evaluation/writer.rb +36 -36
  293. data/lib/datadog/open_feature/hooks/flag_eval_evp_hook.rb +5 -4
  294. data/lib/datadog/open_feature/hooks/flag_eval_metrics_hook.rb +3 -1
  295. data/lib/datadog/open_feature/hooks/span_enrichment_hook/codec.rb +58 -0
  296. data/lib/datadog/open_feature/hooks/span_enrichment_hook/span_enrichment_state.rb +96 -0
  297. data/lib/datadog/open_feature/hooks/span_enrichment_hook/span_enrichment_state_store.rb +49 -0
  298. data/lib/datadog/open_feature/hooks/span_enrichment_hook.rb +184 -0
  299. data/lib/datadog/open_feature/metrics/flag_eval_metrics.rb +24 -24
  300. data/lib/datadog/open_feature/native_evaluator.rb +4 -4
  301. data/lib/datadog/open_feature/noop_evaluator.rb +3 -3
  302. data/lib/datadog/open_feature/provider.rb +45 -10
  303. data/lib/datadog/open_feature/remote.rb +2 -2
  304. data/lib/datadog/open_feature/resolution_details.rb +4 -2
  305. data/lib/datadog/open_feature/transport.rb +14 -14
  306. data/lib/datadog/open_feature.rb +2 -2
  307. data/lib/datadog/opentelemetry/api/baggage.rb +3 -3
  308. data/lib/datadog/opentelemetry/api/context.rb +4 -4
  309. data/lib/datadog/opentelemetry/configuration/settings.rb +41 -41
  310. data/lib/datadog/opentelemetry/ext.rb +1 -1
  311. data/lib/datadog/opentelemetry/logs.rb +5 -5
  312. data/lib/datadog/opentelemetry/metrics.rb +7 -7
  313. data/lib/datadog/opentelemetry/sdk/configurator.rb +8 -8
  314. data/lib/datadog/opentelemetry/sdk/id_generator.rb +2 -2
  315. data/lib/datadog/opentelemetry/sdk/logs_exporter.rb +6 -6
  316. data/lib/datadog/opentelemetry/sdk/metrics_exporter.rb +5 -5
  317. data/lib/datadog/opentelemetry/sdk/propagator.rb +7 -7
  318. data/lib/datadog/opentelemetry/sdk/span_processor.rb +15 -15
  319. data/lib/datadog/opentelemetry/sdk/trace/span.rb +32 -32
  320. data/lib/datadog/opentelemetry/sdk.rb +2 -2
  321. data/lib/datadog/opentelemetry/signal_configuration.rb +11 -11
  322. data/lib/datadog/opentelemetry/trace.rb +1 -1
  323. data/lib/datadog/opentelemetry.rb +8 -8
  324. data/lib/datadog/profiling/exporter.rb +1 -1
  325. data/lib/datadog/profiling/http_transport.rb +1 -1
  326. data/lib/datadog/profiling/sequence_tracker.rb +1 -1
  327. data/lib/datadog/profiling/tag_builder.rb +19 -19
  328. data/lib/datadog/profiling.rb +27 -27
  329. data/lib/datadog/single_step_instrument.rb +1 -1
  330. data/lib/datadog/symbol_database/component.rb +15 -15
  331. data/lib/datadog/symbol_database/configuration.rb +3 -3
  332. data/lib/datadog/symbol_database/extensions.rb +2 -2
  333. data/lib/datadog/symbol_database/extractor.rb +53 -53
  334. data/lib/datadog/symbol_database/file_hash.rb +3 -3
  335. data/lib/datadog/symbol_database/logger.rb +1 -1
  336. data/lib/datadog/symbol_database/remote.rb +21 -6
  337. data/lib/datadog/symbol_database/scope.rb +2 -2
  338. data/lib/datadog/symbol_database/scope_batcher.rb +2 -2
  339. data/lib/datadog/symbol_database/service_version.rb +4 -4
  340. data/lib/datadog/symbol_database/symbol.rb +1 -1
  341. data/lib/datadog/symbol_database/transport/http/endpoint.rb +1 -1
  342. data/lib/datadog/symbol_database/transport/http.rb +6 -6
  343. data/lib/datadog/symbol_database/transport.rb +4 -4
  344. data/lib/datadog/symbol_database/uploader.rb +22 -22
  345. data/lib/datadog/symbol_database.rb +2 -2
  346. data/lib/datadog/tracing/analytics.rb +1 -1
  347. data/lib/datadog/tracing/buffer.rb +5 -5
  348. data/lib/datadog/tracing/client_ip.rb +4 -4
  349. data/lib/datadog/tracing/component.rb +7 -7
  350. data/lib/datadog/tracing/configuration/dynamic.rb +8 -8
  351. data/lib/datadog/tracing/configuration/ext.rb +42 -42
  352. data/lib/datadog/tracing/configuration/http.rb +2 -2
  353. data/lib/datadog/tracing/configuration/settings.rb +16 -16
  354. data/lib/datadog/tracing/context.rb +1 -1
  355. data/lib/datadog/tracing/context_provider.rb +2 -2
  356. data/lib/datadog/tracing/contrib/action_cable/configuration/settings.rb +2 -2
  357. data/lib/datadog/tracing/contrib/action_cable/event.rb +4 -4
  358. data/lib/datadog/tracing/contrib/action_cable/events/broadcast.rb +5 -5
  359. data/lib/datadog/tracing/contrib/action_cable/events/perform_action.rb +4 -4
  360. data/lib/datadog/tracing/contrib/action_cable/events/transmit.rb +5 -5
  361. data/lib/datadog/tracing/contrib/action_cable/events.rb +4 -4
  362. data/lib/datadog/tracing/contrib/action_cable/ext.rb +18 -18
  363. data/lib/datadog/tracing/contrib/action_cable/instrumentation.rb +4 -4
  364. data/lib/datadog/tracing/contrib/action_cable/integration.rb +7 -7
  365. data/lib/datadog/tracing/contrib/action_cable/patcher.rb +4 -4
  366. data/lib/datadog/tracing/contrib/action_mailer/configuration/settings.rb +2 -2
  367. data/lib/datadog/tracing/contrib/action_mailer/event.rb +3 -3
  368. data/lib/datadog/tracing/contrib/action_mailer/events/deliver.rb +8 -8
  369. data/lib/datadog/tracing/contrib/action_mailer/events/process.rb +4 -4
  370. data/lib/datadog/tracing/contrib/action_mailer/events.rb +2 -2
  371. data/lib/datadog/tracing/contrib/action_mailer/ext.rb +18 -18
  372. data/lib/datadog/tracing/contrib/action_mailer/integration.rb +7 -7
  373. data/lib/datadog/tracing/contrib/action_mailer/patcher.rb +3 -3
  374. data/lib/datadog/tracing/contrib/action_pack/action_controller/instrumentation.rb +8 -8
  375. data/lib/datadog/tracing/contrib/action_pack/action_controller/patcher.rb +2 -2
  376. data/lib/datadog/tracing/contrib/action_pack/action_dispatch/instrumentation.rb +4 -4
  377. data/lib/datadog/tracing/contrib/action_pack/action_dispatch/patcher.rb +4 -4
  378. data/lib/datadog/tracing/contrib/action_pack/configuration/settings.rb +3 -3
  379. data/lib/datadog/tracing/contrib/action_pack/ext.rb +10 -10
  380. data/lib/datadog/tracing/contrib/action_pack/integration.rb +7 -7
  381. data/lib/datadog/tracing/contrib/action_pack/patcher.rb +3 -3
  382. data/lib/datadog/tracing/contrib/action_pack/utils.rb +1 -1
  383. data/lib/datadog/tracing/contrib/action_view/configuration/settings.rb +3 -3
  384. data/lib/datadog/tracing/contrib/action_view/event.rb +1 -1
  385. data/lib/datadog/tracing/contrib/action_view/events/render_partial.rb +6 -6
  386. data/lib/datadog/tracing/contrib/action_view/events/render_template.rb +6 -6
  387. data/lib/datadog/tracing/contrib/action_view/events.rb +2 -2
  388. data/lib/datadog/tracing/contrib/action_view/ext.rb +10 -10
  389. data/lib/datadog/tracing/contrib/action_view/integration.rb +11 -11
  390. data/lib/datadog/tracing/contrib/action_view/patcher.rb +5 -5
  391. data/lib/datadog/tracing/contrib/action_view/utils.rb +2 -2
  392. data/lib/datadog/tracing/contrib/active_job/configuration/settings.rb +2 -2
  393. data/lib/datadog/tracing/contrib/active_job/data_streams.rb +2 -2
  394. data/lib/datadog/tracing/contrib/active_job/event.rb +3 -3
  395. data/lib/datadog/tracing/contrib/active_job/events/discard.rb +5 -5
  396. data/lib/datadog/tracing/contrib/active_job/events/enqueue.rb +5 -5
  397. data/lib/datadog/tracing/contrib/active_job/events/enqueue_at.rb +5 -5
  398. data/lib/datadog/tracing/contrib/active_job/events/enqueue_retry.rb +5 -5
  399. data/lib/datadog/tracing/contrib/active_job/events/perform.rb +5 -5
  400. data/lib/datadog/tracing/contrib/active_job/events/retry_stopped.rb +5 -5
  401. data/lib/datadog/tracing/contrib/active_job/events.rb +6 -6
  402. data/lib/datadog/tracing/contrib/active_job/ext.rb +23 -23
  403. data/lib/datadog/tracing/contrib/active_job/integration.rb +7 -7
  404. data/lib/datadog/tracing/contrib/active_job/patcher.rb +7 -7
  405. data/lib/datadog/tracing/contrib/active_model_serializers/configuration/settings.rb +2 -2
  406. data/lib/datadog/tracing/contrib/active_model_serializers/event.rb +4 -4
  407. data/lib/datadog/tracing/contrib/active_model_serializers/events/render.rb +6 -6
  408. data/lib/datadog/tracing/contrib/active_model_serializers/events/serialize.rb +6 -6
  409. data/lib/datadog/tracing/contrib/active_model_serializers/events.rb +2 -2
  410. data/lib/datadog/tracing/contrib/active_model_serializers/ext.rb +10 -10
  411. data/lib/datadog/tracing/contrib/active_model_serializers/integration.rb +5 -5
  412. data/lib/datadog/tracing/contrib/active_model_serializers/patcher.rb +3 -3
  413. data/lib/datadog/tracing/contrib/active_record/configuration/makara_resolver.rb +1 -1
  414. data/lib/datadog/tracing/contrib/active_record/configuration/resolver.rb +6 -6
  415. data/lib/datadog/tracing/contrib/active_record/configuration/settings.rb +4 -4
  416. data/lib/datadog/tracing/contrib/active_record/event.rb +1 -1
  417. data/lib/datadog/tracing/contrib/active_record/events/instantiation.rb +8 -8
  418. data/lib/datadog/tracing/contrib/active_record/events/sql.rb +9 -9
  419. data/lib/datadog/tracing/contrib/active_record/events.rb +2 -2
  420. data/lib/datadog/tracing/contrib/active_record/ext.rb +15 -15
  421. data/lib/datadog/tracing/contrib/active_record/integration.rb +11 -11
  422. data/lib/datadog/tracing/contrib/active_record/patcher.rb +2 -2
  423. data/lib/datadog/tracing/contrib/active_record/utils.rb +3 -3
  424. data/lib/datadog/tracing/contrib/active_support/cache/event.rb +1 -1
  425. data/lib/datadog/tracing/contrib/active_support/cache/events/cache.rb +11 -11
  426. data/lib/datadog/tracing/contrib/active_support/cache/events.rb +1 -1
  427. data/lib/datadog/tracing/contrib/active_support/cache/instrumentation.rb +4 -4
  428. data/lib/datadog/tracing/contrib/active_support/cache/patcher.rb +5 -5
  429. data/lib/datadog/tracing/contrib/active_support/cache/redis.rb +4 -4
  430. data/lib/datadog/tracing/contrib/active_support/configuration/settings.rb +3 -3
  431. data/lib/datadog/tracing/contrib/active_support/ext.rb +16 -16
  432. data/lib/datadog/tracing/contrib/active_support/integration.rb +8 -8
  433. data/lib/datadog/tracing/contrib/active_support/notifications/event.rb +1 -1
  434. data/lib/datadog/tracing/contrib/active_support/notifications/subscriber.rb +2 -2
  435. data/lib/datadog/tracing/contrib/active_support/notifications/subscription.rb +1 -1
  436. data/lib/datadog/tracing/contrib/active_support/patcher.rb +2 -2
  437. data/lib/datadog/tracing/contrib/analytics.rb +1 -1
  438. data/lib/datadog/tracing/contrib/auto_instrument.rb +4 -4
  439. data/lib/datadog/tracing/contrib/aws/configuration/settings.rb +3 -3
  440. data/lib/datadog/tracing/contrib/aws/ext.rb +25 -25
  441. data/lib/datadog/tracing/contrib/aws/instrumentation.rb +5 -5
  442. data/lib/datadog/tracing/contrib/aws/integration.rb +9 -9
  443. data/lib/datadog/tracing/contrib/aws/parsed_context.rb +1 -1
  444. data/lib/datadog/tracing/contrib/aws/patcher.rb +5 -5
  445. data/lib/datadog/tracing/contrib/aws/service/dynamodb.rb +2 -2
  446. data/lib/datadog/tracing/contrib/aws/service/eventbridge.rb +2 -2
  447. data/lib/datadog/tracing/contrib/aws/service/kinesis.rb +4 -4
  448. data/lib/datadog/tracing/contrib/aws/service/s3.rb +2 -2
  449. data/lib/datadog/tracing/contrib/aws/service/sns.rb +3 -3
  450. data/lib/datadog/tracing/contrib/aws/service/sqs.rb +3 -3
  451. data/lib/datadog/tracing/contrib/aws/service/states.rb +5 -5
  452. data/lib/datadog/tracing/contrib/aws/services.rb +14 -14
  453. data/lib/datadog/tracing/contrib/concurrent_ruby/async_patch.rb +1 -1
  454. data/lib/datadog/tracing/contrib/concurrent_ruby/configuration/settings.rb +2 -2
  455. data/lib/datadog/tracing/contrib/concurrent_ruby/context_composite_executor_service.rb +1 -1
  456. data/lib/datadog/tracing/contrib/concurrent_ruby/ext.rb +2 -2
  457. data/lib/datadog/tracing/contrib/concurrent_ruby/future_patch.rb +1 -1
  458. data/lib/datadog/tracing/contrib/concurrent_ruby/integration.rb +6 -6
  459. data/lib/datadog/tracing/contrib/concurrent_ruby/patcher.rb +4 -4
  460. data/lib/datadog/tracing/contrib/concurrent_ruby/promises_future_patch.rb +1 -1
  461. data/lib/datadog/tracing/contrib/configurable.rb +2 -2
  462. data/lib/datadog/tracing/contrib/configuration/resolvers/pattern_resolver.rb +1 -1
  463. data/lib/datadog/tracing/contrib/configuration/settings.rb +2 -2
  464. data/lib/datadog/tracing/contrib/dalli/configuration/settings.rb +2 -2
  465. data/lib/datadog/tracing/contrib/dalli/ext.rb +13 -13
  466. data/lib/datadog/tracing/contrib/dalli/instrumentation.rb +5 -5
  467. data/lib/datadog/tracing/contrib/dalli/integration.rb +7 -7
  468. data/lib/datadog/tracing/contrib/dalli/patcher.rb +3 -3
  469. data/lib/datadog/tracing/contrib/dalli/quantize.rb +2 -2
  470. data/lib/datadog/tracing/contrib/delayed_job/configuration/settings.rb +2 -2
  471. data/lib/datadog/tracing/contrib/delayed_job/ext.rb +14 -14
  472. data/lib/datadog/tracing/contrib/delayed_job/integration.rb +5 -5
  473. data/lib/datadog/tracing/contrib/delayed_job/patcher.rb +3 -3
  474. data/lib/datadog/tracing/contrib/delayed_job/plugin.rb +5 -5
  475. data/lib/datadog/tracing/contrib/elasticsearch/configuration/settings.rb +2 -2
  476. data/lib/datadog/tracing/contrib/elasticsearch/ext.rb +15 -15
  477. data/lib/datadog/tracing/contrib/elasticsearch/integration.rb +6 -6
  478. data/lib/datadog/tracing/contrib/elasticsearch/patcher.rb +10 -10
  479. data/lib/datadog/tracing/contrib/elasticsearch/quantize.rb +2 -2
  480. data/lib/datadog/tracing/contrib/ethon/configuration/settings.rb +2 -2
  481. data/lib/datadog/tracing/contrib/ethon/easy_patch.rb +8 -8
  482. data/lib/datadog/tracing/contrib/ethon/ext.rb +13 -13
  483. data/lib/datadog/tracing/contrib/ethon/integration.rb +6 -6
  484. data/lib/datadog/tracing/contrib/ethon/multi_patch.rb +3 -3
  485. data/lib/datadog/tracing/contrib/ethon/patcher.rb +3 -3
  486. data/lib/datadog/tracing/contrib/excon/configuration/settings.rb +5 -5
  487. data/lib/datadog/tracing/contrib/excon/ext.rb +11 -11
  488. data/lib/datadog/tracing/contrib/excon/integration.rb +6 -6
  489. data/lib/datadog/tracing/contrib/excon/middleware.rb +8 -8
  490. data/lib/datadog/tracing/contrib/excon/patcher.rb +2 -2
  491. data/lib/datadog/tracing/contrib/ext.rb +15 -15
  492. data/lib/datadog/tracing/contrib/extensions.rb +2 -2
  493. data/lib/datadog/tracing/contrib/faraday/configuration/settings.rb +4 -4
  494. data/lib/datadog/tracing/contrib/faraday/ext.rb +11 -11
  495. data/lib/datadog/tracing/contrib/faraday/integration.rb +6 -6
  496. data/lib/datadog/tracing/contrib/faraday/middleware.rb +8 -8
  497. data/lib/datadog/tracing/contrib/faraday/patcher.rb +6 -6
  498. data/lib/datadog/tracing/contrib/grape/configuration/settings.rb +4 -4
  499. data/lib/datadog/tracing/contrib/grape/endpoint.rb +20 -20
  500. data/lib/datadog/tracing/contrib/grape/ext.rb +15 -15
  501. data/lib/datadog/tracing/contrib/grape/instrumentation.rb +3 -3
  502. data/lib/datadog/tracing/contrib/grape/integration.rb +5 -5
  503. data/lib/datadog/tracing/contrib/grape/patcher.rb +5 -5
  504. data/lib/datadog/tracing/contrib/graphql/configuration/error_extension_env_parser.rb +1 -1
  505. data/lib/datadog/tracing/contrib/graphql/configuration/settings.rb +3 -3
  506. data/lib/datadog/tracing/contrib/graphql/ext.rb +9 -9
  507. data/lib/datadog/tracing/contrib/graphql/integration.rb +9 -9
  508. data/lib/datadog/tracing/contrib/graphql/patcher.rb +7 -7
  509. data/lib/datadog/tracing/contrib/graphql/unified_trace.rb +37 -37
  510. data/lib/datadog/tracing/contrib/graphql/unified_trace_patcher.rb +2 -2
  511. data/lib/datadog/tracing/contrib/grpc/configuration/settings.rb +2 -2
  512. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/client.rb +7 -7
  513. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor/server.rb +7 -7
  514. data/lib/datadog/tracing/contrib/grpc/datadog_interceptor.rb +6 -6
  515. data/lib/datadog/tracing/contrib/grpc/distributed/fetcher.rb +1 -1
  516. data/lib/datadog/tracing/contrib/grpc/distributed/propagation.rb +8 -8
  517. data/lib/datadog/tracing/contrib/grpc/ext.rb +14 -14
  518. data/lib/datadog/tracing/contrib/grpc/formatting.rb +7 -7
  519. data/lib/datadog/tracing/contrib/grpc/integration.rb +5 -5
  520. data/lib/datadog/tracing/contrib/grpc/intercept_with_datadog.rb +1 -1
  521. data/lib/datadog/tracing/contrib/grpc/patcher.rb +3 -3
  522. data/lib/datadog/tracing/contrib/grpc.rb +6 -6
  523. data/lib/datadog/tracing/contrib/hanami/action_tracer.rb +3 -3
  524. data/lib/datadog/tracing/contrib/hanami/configuration/settings.rb +2 -2
  525. data/lib/datadog/tracing/contrib/hanami/ext.rb +8 -8
  526. data/lib/datadog/tracing/contrib/hanami/integration.rb +6 -6
  527. data/lib/datadog/tracing/contrib/hanami/patcher.rb +5 -5
  528. data/lib/datadog/tracing/contrib/hanami/renderer_policy_tracing.rb +3 -3
  529. data/lib/datadog/tracing/contrib/hanami/router_tracing.rb +3 -3
  530. data/lib/datadog/tracing/contrib/http/circuit_breaker.rb +1 -1
  531. data/lib/datadog/tracing/contrib/http/configuration/settings.rb +4 -4
  532. data/lib/datadog/tracing/contrib/http/distributed/fetcher.rb +3 -3
  533. data/lib/datadog/tracing/contrib/http/distributed/propagation.rb +8 -8
  534. data/lib/datadog/tracing/contrib/http/ext.rb +11 -11
  535. data/lib/datadog/tracing/contrib/http/instrumentation.rb +6 -6
  536. data/lib/datadog/tracing/contrib/http/integration.rb +7 -7
  537. data/lib/datadog/tracing/contrib/http/patcher.rb +3 -3
  538. data/lib/datadog/tracing/contrib/http.rb +6 -6
  539. data/lib/datadog/tracing/contrib/httpclient/configuration/settings.rb +4 -4
  540. data/lib/datadog/tracing/contrib/httpclient/ext.rb +11 -11
  541. data/lib/datadog/tracing/contrib/httpclient/instrumentation.rb +5 -5
  542. data/lib/datadog/tracing/contrib/httpclient/integration.rb +6 -6
  543. data/lib/datadog/tracing/contrib/httpclient/patcher.rb +3 -3
  544. data/lib/datadog/tracing/contrib/httprb/configuration/settings.rb +4 -4
  545. data/lib/datadog/tracing/contrib/httprb/ext.rb +11 -11
  546. data/lib/datadog/tracing/contrib/httprb/instrumentation.rb +6 -6
  547. data/lib/datadog/tracing/contrib/httprb/integration.rb +7 -7
  548. data/lib/datadog/tracing/contrib/httprb/patcher.rb +3 -3
  549. data/lib/datadog/tracing/contrib/integration.rb +3 -3
  550. data/lib/datadog/tracing/contrib/kafka/configuration/settings.rb +2 -2
  551. data/lib/datadog/tracing/contrib/kafka/event.rb +3 -3
  552. data/lib/datadog/tracing/contrib/kafka/events/connection/request.rb +3 -3
  553. data/lib/datadog/tracing/contrib/kafka/events/consumer/process_batch.rb +4 -4
  554. data/lib/datadog/tracing/contrib/kafka/events/consumer/process_message.rb +4 -4
  555. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/heartbeat.rb +5 -5
  556. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/join_group.rb +5 -5
  557. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/leave_group.rb +5 -5
  558. data/lib/datadog/tracing/contrib/kafka/events/consumer_group/sync_group.rb +5 -5
  559. data/lib/datadog/tracing/contrib/kafka/events/produce_operation/send_messages.rb +3 -3
  560. data/lib/datadog/tracing/contrib/kafka/events/producer/deliver_messages.rb +3 -3
  561. data/lib/datadog/tracing/contrib/kafka/events.rb +9 -9
  562. data/lib/datadog/tracing/contrib/kafka/ext.rb +40 -40
  563. data/lib/datadog/tracing/contrib/kafka/instrumentation/consumer.rb +2 -2
  564. data/lib/datadog/tracing/contrib/kafka/instrumentation/producer.rb +4 -4
  565. data/lib/datadog/tracing/contrib/kafka/integration.rb +6 -6
  566. data/lib/datadog/tracing/contrib/kafka/patcher.rb +5 -5
  567. data/lib/datadog/tracing/contrib/karafka/configuration/settings.rb +2 -2
  568. data/lib/datadog/tracing/contrib/karafka/distributed/propagation.rb +8 -8
  569. data/lib/datadog/tracing/contrib/karafka/ext.rb +13 -13
  570. data/lib/datadog/tracing/contrib/karafka/integration.rb +5 -5
  571. data/lib/datadog/tracing/contrib/karafka/monitor.rb +14 -14
  572. data/lib/datadog/tracing/contrib/karafka/patcher.rb +8 -8
  573. data/lib/datadog/tracing/contrib/karafka.rb +6 -6
  574. data/lib/datadog/tracing/contrib/lograge/configuration/settings.rb +2 -2
  575. data/lib/datadog/tracing/contrib/lograge/ext.rb +1 -1
  576. data/lib/datadog/tracing/contrib/lograge/integration.rb +5 -5
  577. data/lib/datadog/tracing/contrib/lograge/patcher.rb +9 -9
  578. data/lib/datadog/tracing/contrib/mongodb/configuration/settings.rb +2 -2
  579. data/lib/datadog/tracing/contrib/mongodb/ext.rb +18 -18
  580. data/lib/datadog/tracing/contrib/mongodb/instrumentation.rb +3 -3
  581. data/lib/datadog/tracing/contrib/mongodb/integration.rb +7 -7
  582. data/lib/datadog/tracing/contrib/mongodb/parsers.rb +5 -5
  583. data/lib/datadog/tracing/contrib/mongodb/patcher.rb +3 -3
  584. data/lib/datadog/tracing/contrib/mongodb/subscribers.rb +13 -13
  585. data/lib/datadog/tracing/contrib/mysql2/configuration/settings.rb +3 -3
  586. data/lib/datadog/tracing/contrib/mysql2/ext.rb +11 -11
  587. data/lib/datadog/tracing/contrib/mysql2/instrumentation.rb +6 -6
  588. data/lib/datadog/tracing/contrib/mysql2/integration.rb +5 -5
  589. data/lib/datadog/tracing/contrib/mysql2/patcher.rb +2 -2
  590. data/lib/datadog/tracing/contrib/opensearch/configuration/settings.rb +2 -2
  591. data/lib/datadog/tracing/contrib/opensearch/ext.rb +22 -22
  592. data/lib/datadog/tracing/contrib/opensearch/integration.rb +6 -6
  593. data/lib/datadog/tracing/contrib/opensearch/patcher.rb +13 -13
  594. data/lib/datadog/tracing/contrib/opensearch/quantize.rb +3 -3
  595. data/lib/datadog/tracing/contrib/patcher.rb +2 -2
  596. data/lib/datadog/tracing/contrib/pg/configuration/settings.rb +3 -3
  597. data/lib/datadog/tracing/contrib/pg/ext.rb +19 -19
  598. data/lib/datadog/tracing/contrib/pg/instrumentation.rb +6 -6
  599. data/lib/datadog/tracing/contrib/pg/integration.rb +5 -5
  600. data/lib/datadog/tracing/contrib/pg/patcher.rb +2 -2
  601. data/lib/datadog/tracing/contrib/presto/configuration/settings.rb +2 -2
  602. data/lib/datadog/tracing/contrib/presto/ext.rb +21 -21
  603. data/lib/datadog/tracing/contrib/presto/instrumentation.rb +2 -2
  604. data/lib/datadog/tracing/contrib/presto/integration.rb +6 -6
  605. data/lib/datadog/tracing/contrib/presto/patcher.rb +4 -4
  606. data/lib/datadog/tracing/contrib/propagation/sql_comment/comment.rb +2 -2
  607. data/lib/datadog/tracing/contrib/propagation/sql_comment/ext.rb +17 -17
  608. data/lib/datadog/tracing/contrib/propagation/sql_comment/mode.rb +1 -1
  609. data/lib/datadog/tracing/contrib/propagation/sql_comment.rb +5 -5
  610. data/lib/datadog/tracing/contrib/que/configuration/settings.rb +2 -2
  611. data/lib/datadog/tracing/contrib/que/ext.rb +19 -19
  612. data/lib/datadog/tracing/contrib/que/integration.rb +6 -6
  613. data/lib/datadog/tracing/contrib/que/patcher.rb +1 -1
  614. data/lib/datadog/tracing/contrib/que/tracer.rb +1 -1
  615. data/lib/datadog/tracing/contrib/racecar/configuration/settings.rb +3 -3
  616. data/lib/datadog/tracing/contrib/racecar/event.rb +4 -4
  617. data/lib/datadog/tracing/contrib/racecar/events/batch.rb +3 -3
  618. data/lib/datadog/tracing/contrib/racecar/events/consume.rb +3 -3
  619. data/lib/datadog/tracing/contrib/racecar/events/message.rb +3 -3
  620. data/lib/datadog/tracing/contrib/racecar/events.rb +3 -3
  621. data/lib/datadog/tracing/contrib/racecar/ext.rb +18 -18
  622. data/lib/datadog/tracing/contrib/racecar/integration.rb +5 -5
  623. data/lib/datadog/tracing/contrib/racecar/patcher.rb +3 -3
  624. data/lib/datadog/tracing/contrib/rack/configuration/settings.rb +2 -2
  625. data/lib/datadog/tracing/contrib/rack/ext.rb +33 -33
  626. data/lib/datadog/tracing/contrib/rack/header_collection.rb +3 -3
  627. data/lib/datadog/tracing/contrib/rack/header_tagging.rb +4 -4
  628. data/lib/datadog/tracing/contrib/rack/integration.rb +6 -6
  629. data/lib/datadog/tracing/contrib/rack/middlewares.rb +24 -24
  630. data/lib/datadog/tracing/contrib/rack/patcher.rb +2 -2
  631. data/lib/datadog/tracing/contrib/rack/request_queue.rb +3 -3
  632. data/lib/datadog/tracing/contrib/rack/route_inference.rb +11 -11
  633. data/lib/datadog/tracing/contrib/rack/trace_proxy_middleware.rb +15 -15
  634. data/lib/datadog/tracing/contrib/rails/auto_instrument_railtie.rb +1 -1
  635. data/lib/datadog/tracing/contrib/rails/configuration/settings.rb +3 -3
  636. data/lib/datadog/tracing/contrib/rails/ext.rb +15 -15
  637. data/lib/datadog/tracing/contrib/rails/framework.rb +11 -11
  638. data/lib/datadog/tracing/contrib/rails/integration.rb +5 -5
  639. data/lib/datadog/tracing/contrib/rails/middlewares.rb +1 -1
  640. data/lib/datadog/tracing/contrib/rails/patcher.rb +8 -8
  641. data/lib/datadog/tracing/contrib/rails/railtie.rb +4 -4
  642. data/lib/datadog/tracing/contrib/rails/runner.rb +1 -1
  643. data/lib/datadog/tracing/contrib/rake/configuration/settings.rb +3 -3
  644. data/lib/datadog/tracing/contrib/rake/ext.rb +12 -12
  645. data/lib/datadog/tracing/contrib/rake/instrumentation.rb +4 -4
  646. data/lib/datadog/tracing/contrib/rake/integration.rb +5 -5
  647. data/lib/datadog/tracing/contrib/rake/patcher.rb +3 -3
  648. data/lib/datadog/tracing/contrib/redis/configuration/resolver.rb +2 -2
  649. data/lib/datadog/tracing/contrib/redis/configuration/settings.rb +2 -2
  650. data/lib/datadog/tracing/contrib/redis/ext.rb +16 -16
  651. data/lib/datadog/tracing/contrib/redis/instrumentation.rb +6 -6
  652. data/lib/datadog/tracing/contrib/redis/integration.rb +7 -7
  653. data/lib/datadog/tracing/contrib/redis/patcher.rb +10 -10
  654. data/lib/datadog/tracing/contrib/redis/quantize.rb +4 -4
  655. data/lib/datadog/tracing/contrib/redis/tags.rb +5 -5
  656. data/lib/datadog/tracing/contrib/redis/trace_middleware.rb +5 -5
  657. data/lib/datadog/tracing/contrib/resque/configuration/settings.rb +2 -2
  658. data/lib/datadog/tracing/contrib/resque/ext.rb +7 -7
  659. data/lib/datadog/tracing/contrib/resque/integration.rb +5 -5
  660. data/lib/datadog/tracing/contrib/resque/patcher.rb +3 -3
  661. data/lib/datadog/tracing/contrib/resque/resque_job.rb +5 -5
  662. data/lib/datadog/tracing/contrib/rest_client/configuration/settings.rb +2 -2
  663. data/lib/datadog/tracing/contrib/rest_client/ext.rb +10 -10
  664. data/lib/datadog/tracing/contrib/rest_client/integration.rb +6 -6
  665. data/lib/datadog/tracing/contrib/rest_client/patcher.rb +2 -2
  666. data/lib/datadog/tracing/contrib/rest_client/request_patch.rb +5 -5
  667. data/lib/datadog/tracing/contrib/roda/configuration/settings.rb +2 -2
  668. data/lib/datadog/tracing/contrib/roda/ext.rb +6 -6
  669. data/lib/datadog/tracing/contrib/roda/instrumentation.rb +4 -4
  670. data/lib/datadog/tracing/contrib/roda/integration.rb +6 -6
  671. data/lib/datadog/tracing/contrib/roda/patcher.rb +3 -3
  672. data/lib/datadog/tracing/contrib/semantic_logger/configuration/settings.rb +2 -2
  673. data/lib/datadog/tracing/contrib/semantic_logger/ext.rb +1 -1
  674. data/lib/datadog/tracing/contrib/semantic_logger/integration.rb +5 -5
  675. data/lib/datadog/tracing/contrib/semantic_logger/patcher.rb +2 -2
  676. data/lib/datadog/tracing/contrib/sequel/configuration/settings.rb +2 -2
  677. data/lib/datadog/tracing/contrib/sequel/database.rb +6 -6
  678. data/lib/datadog/tracing/contrib/sequel/dataset.rb +5 -5
  679. data/lib/datadog/tracing/contrib/sequel/ext.rb +12 -8
  680. data/lib/datadog/tracing/contrib/sequel/integration.rb +5 -5
  681. data/lib/datadog/tracing/contrib/sequel/patcher.rb +3 -3
  682. data/lib/datadog/tracing/contrib/sequel/utils.rb +113 -8
  683. data/lib/datadog/tracing/contrib/shoryuken/configuration/settings.rb +2 -2
  684. data/lib/datadog/tracing/contrib/shoryuken/ext.rb +12 -12
  685. data/lib/datadog/tracing/contrib/shoryuken/integration.rb +6 -6
  686. data/lib/datadog/tracing/contrib/shoryuken/patcher.rb +1 -1
  687. data/lib/datadog/tracing/contrib/shoryuken/tracer.rb +2 -2
  688. data/lib/datadog/tracing/contrib/sidekiq/client_tracer.rb +8 -8
  689. data/lib/datadog/tracing/contrib/sidekiq/configuration/settings.rb +2 -2
  690. data/lib/datadog/tracing/contrib/sidekiq/distributed/propagation.rb +9 -9
  691. data/lib/datadog/tracing/contrib/sidekiq/ext.rb +30 -30
  692. data/lib/datadog/tracing/contrib/sidekiq/integration.rb +7 -7
  693. data/lib/datadog/tracing/contrib/sidekiq/patcher.rb +8 -8
  694. data/lib/datadog/tracing/contrib/sidekiq/server_tracer.rb +13 -13
  695. data/lib/datadog/tracing/contrib/sidekiq/utils.rb +9 -9
  696. data/lib/datadog/tracing/contrib/sidekiq.rb +6 -6
  697. data/lib/datadog/tracing/contrib/sinatra/configuration/settings.rb +2 -2
  698. data/lib/datadog/tracing/contrib/sinatra/env.rb +6 -6
  699. data/lib/datadog/tracing/contrib/sinatra/ext.rb +17 -17
  700. data/lib/datadog/tracing/contrib/sinatra/framework.rb +1 -1
  701. data/lib/datadog/tracing/contrib/sinatra/integration.rb +5 -5
  702. data/lib/datadog/tracing/contrib/sinatra/patcher.rb +5 -5
  703. data/lib/datadog/tracing/contrib/sinatra/tracer.rb +10 -10
  704. data/lib/datadog/tracing/contrib/sinatra/tracer_middleware.rb +8 -8
  705. data/lib/datadog/tracing/contrib/sneakers/configuration/settings.rb +1 -1
  706. data/lib/datadog/tracing/contrib/sneakers/ext.rb +12 -12
  707. data/lib/datadog/tracing/contrib/sneakers/integration.rb +7 -7
  708. data/lib/datadog/tracing/contrib/sneakers/patcher.rb +2 -2
  709. data/lib/datadog/tracing/contrib/sneakers/tracer.rb +3 -3
  710. data/lib/datadog/tracing/contrib/span_attribute_schema.rb +2 -2
  711. data/lib/datadog/tracing/contrib/status_range_env_parser.rb +2 -2
  712. data/lib/datadog/tracing/contrib/status_range_matcher.rb +1 -1
  713. data/lib/datadog/tracing/contrib/stripe/configuration/settings.rb +2 -2
  714. data/lib/datadog/tracing/contrib/stripe/ext.rb +12 -12
  715. data/lib/datadog/tracing/contrib/stripe/integration.rb +5 -5
  716. data/lib/datadog/tracing/contrib/stripe/patcher.rb +2 -2
  717. data/lib/datadog/tracing/contrib/stripe/request.rb +3 -3
  718. data/lib/datadog/tracing/contrib/sucker_punch/configuration/settings.rb +2 -2
  719. data/lib/datadog/tracing/contrib/sucker_punch/exception_handler.rb +1 -1
  720. data/lib/datadog/tracing/contrib/sucker_punch/ext.rb +13 -13
  721. data/lib/datadog/tracing/contrib/sucker_punch/instrumentation.rb +4 -4
  722. data/lib/datadog/tracing/contrib/sucker_punch/integration.rb +5 -5
  723. data/lib/datadog/tracing/contrib/sucker_punch/patcher.rb +4 -4
  724. data/lib/datadog/tracing/contrib/trilogy/configuration/settings.rb +3 -3
  725. data/lib/datadog/tracing/contrib/trilogy/ext.rb +11 -11
  726. data/lib/datadog/tracing/contrib/trilogy/instrumentation.rb +6 -6
  727. data/lib/datadog/tracing/contrib/trilogy/integration.rb +5 -5
  728. data/lib/datadog/tracing/contrib/trilogy/patcher.rb +2 -2
  729. data/lib/datadog/tracing/contrib/utils/database.rb +5 -5
  730. data/lib/datadog/tracing/contrib/utils/quantization/hash_formatter.rb +1 -1
  731. data/lib/datadog/tracing/contrib/utils/quantization/http.rb +10 -10
  732. data/lib/datadog/tracing/contrib/waterdrop/configuration/settings.rb +2 -2
  733. data/lib/datadog/tracing/contrib/waterdrop/distributed/propagation.rb +8 -8
  734. data/lib/datadog/tracing/contrib/waterdrop/ext.rb +4 -4
  735. data/lib/datadog/tracing/contrib/waterdrop/integration.rb +5 -5
  736. data/lib/datadog/tracing/contrib/waterdrop/middleware.rb +2 -2
  737. data/lib/datadog/tracing/contrib/waterdrop/patcher.rb +7 -7
  738. data/lib/datadog/tracing/contrib/waterdrop/producer.rb +3 -3
  739. data/lib/datadog/tracing/contrib/waterdrop.rb +6 -6
  740. data/lib/datadog/tracing/contrib.rb +54 -54
  741. data/lib/datadog/tracing/correlation.rb +10 -10
  742. data/lib/datadog/tracing/diagnostics/environment_logger.rb +9 -9
  743. data/lib/datadog/tracing/diagnostics/ext.rb +19 -19
  744. data/lib/datadog/tracing/diagnostics/health.rb +1 -1
  745. data/lib/datadog/tracing/distributed/b3_multi.rb +8 -8
  746. data/lib/datadog/tracing/distributed/b3_single.rb +4 -4
  747. data/lib/datadog/tracing/distributed/baggage.rb +27 -27
  748. data/lib/datadog/tracing/distributed/datadog.rb +21 -21
  749. data/lib/datadog/tracing/distributed/datadog_tags_codec.rb +3 -3
  750. data/lib/datadog/tracing/distributed/fetcher.rb +1 -1
  751. data/lib/datadog/tracing/distributed/helpers.rb +3 -3
  752. data/lib/datadog/tracing/distributed/propagation.rb +12 -12
  753. data/lib/datadog/tracing/distributed/trace_context.rb +33 -33
  754. data/lib/datadog/tracing/event.rb +1 -1
  755. data/lib/datadog/tracing/ext.rb +1 -1
  756. data/lib/datadog/tracing/metadata/analytics.rb +2 -2
  757. data/lib/datadog/tracing/metadata/errors.rb +4 -4
  758. data/lib/datadog/tracing/metadata/ext.rb +69 -69
  759. data/lib/datadog/tracing/metadata/metastruct.rb +1 -1
  760. data/lib/datadog/tracing/metadata/metastruct_tagging.rb +1 -1
  761. data/lib/datadog/tracing/metadata/tagging.rb +2 -2
  762. data/lib/datadog/tracing/metadata.rb +4 -4
  763. data/lib/datadog/tracing/pipeline/span_filter.rb +2 -2
  764. data/lib/datadog/tracing/pipeline.rb +2 -2
  765. data/lib/datadog/tracing/remote.rb +23 -16
  766. data/lib/datadog/tracing/sampling/all_sampler.rb +1 -1
  767. data/lib/datadog/tracing/sampling/ext.rb +8 -8
  768. data/lib/datadog/tracing/sampling/matcher.rb +4 -4
  769. data/lib/datadog/tracing/sampling/priority_sampler.rb +4 -4
  770. data/lib/datadog/tracing/sampling/rate_by_key_sampler.rb +3 -3
  771. data/lib/datadog/tracing/sampling/rate_by_service_sampler.rb +2 -2
  772. data/lib/datadog/tracing/sampling/rate_sampler.rb +2 -2
  773. data/lib/datadog/tracing/sampling/rule.rb +4 -4
  774. data/lib/datadog/tracing/sampling/rule_sampler.rb +12 -12
  775. data/lib/datadog/tracing/sampling/sampler.rb +2 -2
  776. data/lib/datadog/tracing/sampling/span/ext.rb +3 -3
  777. data/lib/datadog/tracing/sampling/span/matcher.rb +2 -2
  778. data/lib/datadog/tracing/sampling/span/rule.rb +1 -1
  779. data/lib/datadog/tracing/sampling/span/rule_parser.rb +8 -8
  780. data/lib/datadog/tracing/span.rb +8 -8
  781. data/lib/datadog/tracing/span_event.rb +5 -5
  782. data/lib/datadog/tracing/span_operation.rb +21 -21
  783. data/lib/datadog/tracing/sync_writer.rb +4 -4
  784. data/lib/datadog/tracing/trace_operation.rb +11 -11
  785. data/lib/datadog/tracing/trace_segment.rb +10 -10
  786. data/lib/datadog/tracing/tracer.rb +15 -15
  787. data/lib/datadog/tracing/transport/http/client.rb +4 -4
  788. data/lib/datadog/tracing/transport/http/statistics.rb +2 -2
  789. data/lib/datadog/tracing/transport/http/traces.rb +8 -8
  790. data/lib/datadog/tracing/transport/http.rb +10 -10
  791. data/lib/datadog/tracing/transport/io/client.rb +2 -2
  792. data/lib/datadog/tracing/transport/io/response.rb +1 -1
  793. data/lib/datadog/tracing/transport/io/traces.rb +4 -4
  794. data/lib/datadog/tracing/transport/io.rb +3 -3
  795. data/lib/datadog/tracing/transport/serializable_trace.rb +19 -19
  796. data/lib/datadog/tracing/transport/statistics.rb +2 -2
  797. data/lib/datadog/tracing/transport/trace_formatter.rb +9 -9
  798. data/lib/datadog/tracing/transport/traces.rb +8 -8
  799. data/lib/datadog/tracing/utils.rb +2 -2
  800. data/lib/datadog/tracing/workers.rb +2 -2
  801. data/lib/datadog/tracing/writer.rb +5 -5
  802. data/lib/datadog/tracing.rb +3 -3
  803. data/lib/datadog/version.rb +4 -4
  804. data/lib/datadog.rb +13 -13
  805. metadata +7 -3
@@ -1,19 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'logger'
3
+ require "logger"
4
4
 
5
- require_relative 'base'
6
- require_relative 'ext'
7
- require_relative '../environment/execution'
8
- require_relative '../environment/ext'
9
- require_relative '../environment/process'
10
- require_relative '../runtime/ext'
11
- require_relative '../telemetry/ext'
12
- require_relative '../remote/ext'
13
- require_relative '../../profiling/ext'
5
+ require_relative "base"
6
+ require_relative "ext"
7
+ require_relative "../environment/execution"
8
+ require_relative "../environment/ext"
9
+ require_relative "../environment/process"
10
+ require_relative "../runtime/ext"
11
+ require_relative "../telemetry/ext"
12
+ require_relative "../remote/ext"
13
+ require_relative "../../profiling/ext"
14
14
 
15
- require_relative '../../tracing/configuration/settings'
16
- require_relative '../../opentelemetry/configuration/settings'
15
+ require_relative "../../tracing/configuration/settings"
16
+ require_relative "../../opentelemetry/configuration/settings"
17
17
 
18
18
  module Datadog
19
19
  module Core
@@ -134,13 +134,13 @@ module Datadog
134
134
  value = value.strip.downcase
135
135
  # Debug is enabled when DD_TRACE_DEBUG is true or 1 OR
136
136
  # when OTEL_LOG_LEVEL is set to debug
137
- ['true', '1', 'debug'].include?(value)
137
+ ["true", "1", "debug"].include?(value)
138
138
  end
139
139
  end
140
140
  o.after_set do |enabled|
141
141
  # Enable rich debug print statements.
142
142
  # We do not need to unnecessarily load 'pp' unless in debugging mode.
143
- require 'pp' if enabled # standard:disable Lint/RedundantRequireStatement
143
+ require "pp" if enabled # standard:disable Lint/RedundantRequireStatement
144
144
  end
145
145
  end
146
146
 
@@ -276,7 +276,7 @@ module Datadog
276
276
  # @default `DD_PROFILING_ALLOCATION_ENABLED` environment variable as a boolean, otherwise `false`
277
277
  option :allocation_enabled do |o|
278
278
  o.type :bool
279
- o.env 'DD_PROFILING_ALLOCATION_ENABLED'
279
+ o.env "DD_PROFILING_ALLOCATION_ENABLED"
280
280
  o.default false
281
281
  end
282
282
 
@@ -324,7 +324,7 @@ module Datadog
324
324
  # @default `DD_PROFILING_GC_ENABLED` environment variable, otherwise `true`
325
325
  option :gc_enabled do |o|
326
326
  o.type :bool
327
- o.env 'DD_PROFILING_GC_ENABLED'
327
+ o.env "DD_PROFILING_GC_ENABLED"
328
328
  o.default true
329
329
  end
330
330
 
@@ -347,7 +347,7 @@ module Datadog
347
347
  # @default `DD_PROFILING_EXPERIMENTAL_HEAP_ENABLED` environment variable as a boolean, otherwise `false`
348
348
  option :experimental_heap_enabled do |o|
349
349
  o.type :bool
350
- o.env 'DD_PROFILING_EXPERIMENTAL_HEAP_ENABLED'
350
+ o.env "DD_PROFILING_EXPERIMENTAL_HEAP_ENABLED"
351
351
  o.default false
352
352
  end
353
353
 
@@ -361,7 +361,7 @@ module Datadog
361
361
  # follows the value of `experimental_heap_enabled`.
362
362
  option :experimental_heap_size_enabled do |o|
363
363
  o.type :bool
364
- o.env 'DD_PROFILING_EXPERIMENTAL_HEAP_SIZE_ENABLED'
364
+ o.env "DD_PROFILING_EXPERIMENTAL_HEAP_SIZE_ENABLED"
365
365
  o.default true # This gets ANDed with experimental_heap_enabled in the profiler component.
366
366
  end
367
367
 
@@ -379,7 +379,7 @@ module Datadog
379
379
  # @default `DD_PROFILING_EXPERIMENTAL_HEAP_SAMPLE_RATE` environment variable, otherwise `1`.
380
380
  option :experimental_heap_sample_rate do |o|
381
381
  o.type :int
382
- o.env 'DD_PROFILING_EXPERIMENTAL_HEAP_SAMPLE_RATE'
382
+ o.env "DD_PROFILING_EXPERIMENTAL_HEAP_SAMPLE_RATE"
383
383
  o.default 1
384
384
  end
385
385
 
@@ -390,20 +390,20 @@ module Datadog
390
390
  # @default `DD_PROFILING_SKIP_MYSQL2_CHECK` environment variable, otherwise `false`
391
391
  option :skip_mysql2_check do |o|
392
392
  o.type :bool
393
- o.env 'DD_PROFILING_SKIP_MYSQL2_CHECK'
393
+ o.env "DD_PROFILING_SKIP_MYSQL2_CHECK"
394
394
  o.default false
395
395
  end
396
396
 
397
397
  # DEV-3.0: Remove `timeline_enabled` option
398
398
  option :timeline_enabled do |o|
399
399
  o.type :bool
400
- o.env 'DD_PROFILING_TIMELINE_ENABLED'
400
+ o.env "DD_PROFILING_TIMELINE_ENABLED"
401
401
  o.default true
402
402
  o.after_set do |_, _, precedence|
403
403
  unless precedence == Datadog::Core::Configuration::Option::Precedence::DEFAULT
404
404
  Core.log_deprecation(key: :timeline_enabled) do
405
- 'The profiling.advanced.timeline_enabled setting has been deprecated for removal and no longer does anything. ' \
406
- 'Please remove it from your Datadog.configure block and do not set DD_PROFILING_TIMELINE_ENABLED.'
405
+ "The profiling.advanced.timeline_enabled setting has been deprecated for removal and no longer does anything. " \
406
+ "Please remove it from your Datadog.configure block and do not set DD_PROFILING_TIMELINE_ENABLED."
407
407
  end
408
408
  end
409
409
  end
@@ -429,12 +429,12 @@ module Datadog
429
429
  #
430
430
  # @default `DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED` environment variable as a boolean, otherwise `:auto`
431
431
  option :no_signals_workaround_enabled do |o|
432
- o.env 'DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED'
432
+ o.env "DD_PROFILING_NO_SIGNALS_WORKAROUND_ENABLED"
433
433
  o.default :auto
434
434
  o.env_parser do |value|
435
435
  if value
436
436
  value = value.strip.downcase
437
- ['true', '1'].include?(value)
437
+ ["true", "1"].include?(value)
438
438
  end
439
439
  end
440
440
  end
@@ -448,7 +448,7 @@ module Datadog
448
448
  # @default `DD_PROFILING_DIR_INTERRUPTION_WORKAROUND_ENABLED` environment variable as a boolean,
449
449
  # otherwise `true`
450
450
  option :dir_interruption_workaround_enabled do |o|
451
- o.env 'DD_PROFILING_DIR_INTERRUPTION_WORKAROUND_ENABLED'
451
+ o.env "DD_PROFILING_DIR_INTERRUPTION_WORKAROUND_ENABLED"
452
452
  o.type :bool
453
453
  o.default true
454
454
  end
@@ -465,7 +465,7 @@ module Datadog
465
465
  # @default `DD_PROFILING_SHUTDOWN_ON_EXEC_ENABLED` environment variable as a boolean,
466
466
  # otherwise `true`
467
467
  option :shutdown_on_exec_enabled do |o|
468
- o.env 'DD_PROFILING_SHUTDOWN_ON_EXEC_ENABLED'
468
+ o.env "DD_PROFILING_SHUTDOWN_ON_EXEC_ENABLED"
469
469
  o.type :bool
470
470
  o.default true
471
471
  end
@@ -483,7 +483,7 @@ module Datadog
483
483
  # @default `DD_PROFILING_OVERHEAD_TARGET_PERCENTAGE` as a float, otherwise 2.0
484
484
  option :overhead_target_percentage do |o|
485
485
  o.type :float
486
- o.env 'DD_PROFILING_OVERHEAD_TARGET_PERCENTAGE'
486
+ o.env "DD_PROFILING_OVERHEAD_TARGET_PERCENTAGE"
487
487
  o.default 2.0
488
488
  end
489
489
 
@@ -494,7 +494,7 @@ module Datadog
494
494
  # @default `DD_PROFILING_UPLOAD_PERIOD` environment variable, otherwise 60
495
495
  option :upload_period_seconds do |o|
496
496
  o.type :int
497
- o.env 'DD_PROFILING_UPLOAD_PERIOD'
497
+ o.env "DD_PROFILING_UPLOAD_PERIOD"
498
498
  o.default 60
499
499
  end
500
500
 
@@ -503,8 +503,8 @@ module Datadog
503
503
  o.after_set do |_, _, precedence|
504
504
  unless precedence == Datadog::Core::Configuration::Option::Precedence::DEFAULT
505
505
  Core.log_deprecation(key: :experimental_crash_tracking_enabled) do
506
- 'The profiling.advanced.experimental_crash_tracking_enabled setting has been deprecated for removal ' \
507
- 'and no longer does anything. Please remove it from your Datadog.configure block.'
506
+ "The profiling.advanced.experimental_crash_tracking_enabled setting has been deprecated for removal " \
507
+ "and no longer does anything. Please remove it from your Datadog.configure block."
508
508
  end
509
509
  end
510
510
  end
@@ -517,9 +517,9 @@ module Datadog
517
517
  o.after_set do |_, _, precedence|
518
518
  unless precedence == Datadog::Core::Configuration::Option::Precedence::DEFAULT
519
519
  Datadog.logger.warn(
520
- 'The profiling.advanced.preview_gvl_enabled setting has been deprecated for removal and ' \
521
- 'no longer does anything. Please remove it from your Datadog.configure block. ' \
522
- 'GVL profiling is now controlled by the profiling.advanced.gvl_enabled setting instead.'
520
+ "The profiling.advanced.preview_gvl_enabled setting has been deprecated for removal and " \
521
+ "no longer does anything. Please remove it from your Datadog.configure block. " \
522
+ "GVL profiling is now controlled by the profiling.advanced.gvl_enabled setting instead."
523
523
  )
524
524
  end
525
525
  end
@@ -533,7 +533,7 @@ module Datadog
533
533
  option :gvl_enabled do |o|
534
534
  o.type :bool
535
535
  # Note: Deprecated alias (DD_PROFILING_PREVIEW_GVL_ENABLED) defined in supported-configurations.json
536
- o.env 'DD_PROFILING_GVL_ENABLED'
536
+ o.env "DD_PROFILING_GVL_ENABLED"
537
537
  o.default true
538
538
  end
539
539
 
@@ -555,24 +555,24 @@ module Datadog
555
555
  #
556
556
  # @default false
557
557
  option :preview_otel_context_enabled do |o|
558
- o.env 'DD_PROFILING_PREVIEW_OTEL_CONTEXT_ENABLED'
558
+ o.env "DD_PROFILING_PREVIEW_OTEL_CONTEXT_ENABLED"
559
559
  o.default false
560
560
  o.env_parser do |value|
561
561
  if value
562
562
  value = value.strip.downcase
563
- if ['only', 'both'].include?(value)
563
+ if ["only", "both"].include?(value)
564
564
  value
565
- elsif ['true', '1'].include?(value)
566
- 'both'
565
+ elsif ["true", "1"].include?(value)
566
+ "both"
567
567
  else
568
- 'false'
568
+ "false"
569
569
  end
570
570
  end
571
571
  end
572
572
  o.setter do |value|
573
573
  if value == true
574
574
  :both
575
- elsif ['only', 'both', :only, :both].include?(value)
575
+ elsif ["only", "both", :only, :both].include?(value)
576
576
  value.to_sym
577
577
  else
578
578
  false
@@ -588,7 +588,7 @@ module Datadog
588
588
  # @default true
589
589
  option :heap_clean_after_gc_enabled do |o|
590
590
  o.type :bool
591
- o.env 'DD_PROFILING_HEAP_CLEAN_AFTER_GC_ENABLED'
591
+ o.env "DD_PROFILING_HEAP_CLEAN_AFTER_GC_ENABLED"
592
592
  o.default true
593
593
  end
594
594
 
@@ -598,7 +598,7 @@ module Datadog
598
598
  # @default true
599
599
  option :native_filenames_enabled do |o|
600
600
  o.type :bool
601
- o.env 'DD_PROFILING_NATIVE_FILENAMES_ENABLED'
601
+ o.env "DD_PROFILING_NATIVE_FILENAMES_ENABLED"
602
602
  o.default true
603
603
  end
604
604
 
@@ -615,9 +615,9 @@ module Datadog
615
615
  # @default true on Ruby 3.2.5+ / Ruby 3.3.4+, false on older Rubies
616
616
  option :sighandler_sampling_enabled do |o|
617
617
  o.type :bool
618
- o.env 'DD_PROFILING_SIGHANDLER_SAMPLING_ENABLED'
618
+ o.env "DD_PROFILING_SIGHANDLER_SAMPLING_ENABLED"
619
619
  o.default do
620
- RubyVersion.is?('>= 3.2.5') && !RubyVersion.is?('>= 3.3', '< 3.3.4')
620
+ RubyVersion.is?(">= 3.2.5") && !RubyVersion.is?(">= 3.3", "< 3.3.4")
621
621
  end
622
622
  end
623
623
 
@@ -641,7 +641,7 @@ module Datadog
641
641
  # @default `DD_PROFILING_EXPERIMENTAL_USE_SYSTEM_DNS` environment variable as a boolean, otherwise `true`
642
642
  option :experimental_use_system_dns do |o|
643
643
  o.type :bool
644
- o.env 'DD_PROFILING_EXPERIMENTAL_USE_SYSTEM_DNS'
644
+ o.env "DD_PROFILING_EXPERIMENTAL_USE_SYSTEM_DNS"
645
645
  o.default true
646
646
  end
647
647
  end
@@ -675,7 +675,7 @@ module Datadog
675
675
  option :experimental_runtime_id_enabled do |o|
676
676
  o.type :bool
677
677
  # Note: Alias (DD_TRACE_EXPERIMENTAL_RUNTIME_ID_ENABLED) defined in supported-configurations.json
678
- o.env 'DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED'
678
+ o.env "DD_RUNTIME_METRICS_RUNTIME_ID_ENABLED"
679
679
  o.default false
680
680
  end
681
681
 
@@ -739,7 +739,7 @@ module Datadog
739
739
  result = {}
740
740
  unless env_value.nil? || env_value.empty?
741
741
  # falling back to comma as separator
742
- sep = env_value.include?(',') ? ',' : ' '
742
+ sep = env_value.include?(",") ? "," : " "
743
743
  # split by separator
744
744
  env_value.split(sep).each do |tag|
745
745
  tag.strip!
@@ -747,12 +747,12 @@ module Datadog
747
747
 
748
748
  # tag by : or = (for OpenTelemetry)
749
749
  key, val = tag.split(/[:=]/, 2).map(&:strip)
750
- val ||= ''
750
+ val ||= ""
751
751
  # maps OpenTelemetry semantic attributes to Datadog tags
752
752
  key = case key.downcase
753
- when 'deployment.environment' then 'env'
754
- when 'service.version' then 'version'
755
- when 'service.name' then 'service'
753
+ when "deployment.environment" then "env"
754
+ when "service.version" then "version"
755
+ when "service.name" then "service"
756
756
  else key
757
757
  end
758
758
  result[key] = val unless key.empty?
@@ -879,8 +879,8 @@ module Datadog
879
879
  o.default do
880
880
  if Datadog::Core::Environment::Execution.development?
881
881
  Datadog.logger.debug do
882
- 'Development environment detected, disabling Telemetry. ' \
883
- 'You can enable it with DD_INSTRUMENTATION_TELEMETRY_ENABLED=true.'
882
+ "Development environment detected, disabling Telemetry. " \
883
+ "You can enable it with DD_INSTRUMENTATION_TELEMETRY_ENABLED=true."
884
884
  end
885
885
  false
886
886
  else
@@ -1036,8 +1036,8 @@ module Datadog
1036
1036
  o.default do
1037
1037
  if Datadog::Core::Environment::Execution.development?
1038
1038
  Datadog.logger.debug do
1039
- 'Development environment detected, disabling Remote Configuration. ' \
1040
- 'You can enable it with DD_REMOTE_CONFIGURATION_ENABLED=true.'
1039
+ "Development environment detected, disabling Remote Configuration. " \
1040
+ "You can enable it with DD_REMOTE_CONFIGURATION_ENABLED=true."
1041
1041
  end
1042
1042
  false
1043
1043
  else
@@ -1086,7 +1086,7 @@ module Datadog
1086
1086
  option :enabled do |o|
1087
1087
  o.type :bool
1088
1088
  o.default true
1089
- o.env 'DD_CRASHTRACKING_ENABLED'
1089
+ o.env "DD_CRASHTRACKING_ENABLED"
1090
1090
  end
1091
1091
  end
1092
1092
 
@@ -1095,7 +1095,7 @@ module Datadog
1095
1095
  # @default `DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED` environment variable, otherwise `true`
1096
1096
  # @return [Boolean]
1097
1097
  option :experimental_propagate_process_tags_enabled do |o|
1098
- o.env 'DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED'
1098
+ o.env "DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED"
1099
1099
  o.default true
1100
1100
  o.type :bool
1101
1101
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../utils/only_once'
3
+ require_relative "../utils/only_once"
4
4
 
5
5
  module Datadog
6
6
  module Core
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'set'
3
+ require "set"
4
4
 
5
5
  # This file is auto-generated from `supported-configurations.json` by `rake local_config_map:generate`.
6
6
  # Do not change manually! Please refer to `docs/AccessEnvironmentVariables.md` for more information.
@@ -59,6 +59,7 @@ module Datadog
59
59
  "DD_ERROR_TRACKING_HANDLED_ERRORS",
60
60
  "DD_ERROR_TRACKING_HANDLED_ERRORS_INCLUDE",
61
61
  "DD_EXPERIMENTAL_FLAGGING_PROVIDER_ENABLED",
62
+ "DD_EXPERIMENTAL_FLAGGING_PROVIDER_SPAN_ENRICHMENT_ENABLED",
62
63
  "DD_EXPERIMENTAL_PROPAGATE_PROCESS_TAGS_ENABLED",
63
64
  "DD_EXTERNAL_ENV",
64
65
  "DD_FLAGGING_EVALUATION_COUNTS_ENABLED",
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'configuration/components'
4
- require_relative 'configuration/settings'
5
- require_relative 'telemetry/emitter'
6
- require_relative 'logger'
7
- require_relative 'pin'
3
+ require_relative "configuration/components"
4
+ require_relative "configuration/settings"
5
+ require_relative "telemetry/emitter"
6
+ require_relative "logger"
7
+ require_relative "pin"
8
8
 
9
9
  module Datadog
10
10
  module Core
@@ -239,7 +239,7 @@ module Datadog
239
239
  rescue ThreadError => e
240
240
  logger_without_components.error(
241
241
  "Detected deadlock during datadog initialization: #{e.class}: #{e.message}. " \
242
- 'Please report this at https://github.com/datadog/dd-trace-rb/blob/master/CONTRIBUTING.md#found-a-bug' \
242
+ "Please report this at https://github.com/datadog/dd-trace-rb/blob/master/CONTRIBUTING.md#found-a-bug" \
243
243
  "\n\tSource:\n\t#{Array(e.backtrace).join("\n\t")}"
244
244
  )
245
245
  nil
@@ -296,7 +296,7 @@ module Datadog
296
296
 
297
297
  @temp_config_logger ||= begin
298
298
  debug_env_value = DATADOG_ENV[Ext::Diagnostics::ENV_DEBUG_ENABLED]&.strip&.downcase
299
- debug_value = debug_env_value == 'true' || debug_env_value == '1'
299
+ debug_value = debug_env_value == "true" || debug_env_value == "1"
300
300
 
301
301
  logger = Core::Logger.new($stderr)
302
302
  # We cannot access config and the default level is INFO, so we need to set the level manually
@@ -317,7 +317,7 @@ module Datadog
317
317
  slow_shutdown = shutdown_thread.join(print_message_treshold_seconds).nil?
318
318
 
319
319
  if slow_shutdown
320
- logger.info 'Reporting remaining data... Press ctrl+c to exit immediately.'
320
+ logger.info "Reporting remaining data... Press ctrl+c to exit immediately."
321
321
  shutdown_thread.join
322
322
  end
323
323
 
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'utils'
4
- require_relative '../../environment/process'
5
- require_relative '../../process_discovery'
3
+ require_relative "utils"
4
+ require_relative "../../environment/process"
5
+ require_relative "../../process_discovery"
6
6
 
7
7
  module Datadog
8
8
  module Core
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'libdatadog'
3
+ require "libdatadog"
4
4
 
5
- require_relative 'tag_builder'
5
+ require_relative "tag_builder"
6
6
 
7
7
  module Datadog
8
8
  module Core
@@ -21,11 +21,11 @@ module Datadog
21
21
  agent_base_url = agent_settings.url
22
22
 
23
23
  ld_library_path = ::Libdatadog.ld_library_path
24
- logger.warn('Missing ld_library_path; cannot enable crash tracking') unless ld_library_path
24
+ logger.warn("Missing ld_library_path; cannot enable crash tracking") unless ld_library_path
25
25
 
26
26
  path_to_crashtracking_receiver_binary = ::Libdatadog.path_to_crashtracking_receiver_binary
27
27
  unless path_to_crashtracking_receiver_binary
28
- logger.warn('Missing path_to_crashtracking_receiver_binary; cannot enable crash tracking')
28
+ logger.warn("Missing path_to_crashtracking_receiver_binary; cannot enable crash tracking")
29
29
  end
30
30
 
31
31
  return unless agent_base_url
@@ -97,10 +97,10 @@ module Datadog
97
97
  # @type var frames_data: Array[[String, String, Integer]]
98
98
  frames_data = backtrace_slice.map do |loc|
99
99
  file = loc.path
100
- file = '<unknown>' if file.nil? || file.empty? || !file.is_a?(String)
100
+ file = "<unknown>" if file.nil? || file.empty? || !file.is_a?(String)
101
101
 
102
102
  function = loc.label
103
- function = '<unknown>' if function.nil? || function.empty? || !function.is_a?(String)
103
+ function = "<unknown>" if function.nil? || function.empty? || !function.is_a?(String)
104
104
 
105
105
  line = loc.lineno
106
106
  line = 0 if line.nil? || line < 0 || !line.is_a?(Integer)
@@ -111,7 +111,7 @@ module Datadog
111
111
  # Add truncation indicator frame if we had to cut off frames
112
112
  if was_truncated
113
113
  truncated_count = all_backtrace_locations.length - max_exception_stack_frames
114
- frames_data << ['<truncated>', "<truncated #{truncated_count} more frames>", 0]
114
+ frames_data << ["<truncated>", "<truncated #{truncated_count} more frames>", 0]
115
115
  end
116
116
 
117
117
  exception_message = exception.message
@@ -123,12 +123,12 @@ module Datadog
123
123
  frames_data,
124
124
  )
125
125
 
126
- logger.debug('Crashtracker failed to report unhandled exception to crash tracker') unless success
126
+ logger.debug("Crashtracker failed to report unhandled exception to crash tracker") unless success
127
127
  end
128
128
 
129
129
  def stop
130
130
  self.class._native_stop
131
- logger.debug('Crash tracking stopped successfully')
131
+ logger.debug("Crash tracking stopped successfully")
132
132
  rescue => e
133
133
  logger.error("Failed to stop crash tracking: #{e.class}: #{e.message}")
134
134
  end
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../tag_builder'
4
- require_relative '../utils'
5
- require_relative '../environment/process'
3
+ require_relative "../tag_builder"
4
+ require_relative "../utils"
5
+ require_relative "../environment/process"
6
6
 
7
7
  module Datadog
8
8
  module Core
@@ -11,12 +11,12 @@ module Datadog
11
11
  module TagBuilder
12
12
  def self.call(settings)
13
13
  hash = Core::TagBuilder.tags(settings).merge(
14
- 'is_crash' => 'true',
14
+ "is_crash" => "true",
15
15
  )
16
16
 
17
17
  if settings.experimental_propagate_process_tags_enabled
18
18
  process_tags = Environment::Process.serialized
19
- hash['process_tags'] = process_tags unless process_tags.empty?
19
+ hash["process_tags"] = process_tags unless process_tags.empty?
20
20
  end
21
21
 
22
22
  Utils.encode_tags(hash)
@@ -19,7 +19,7 @@ module Datadog
19
19
 
20
20
  logger.warn do
21
21
  message = yield
22
- message += ' This will be enforced in the next major release.' if disallowed_next_major
22
+ message += " This will be enforced in the next major release." if disallowed_next_major
23
23
  message
24
24
  end
25
25
 
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'json'
4
- require 'rbconfig'
5
- require 'time'
3
+ require "json"
4
+ require "rbconfig"
5
+ require "time"
6
6
 
7
7
  module Datadog
8
8
  module Core
@@ -49,7 +49,7 @@ module Datadog
49
49
  if log?
50
50
  data = EnvironmentCollector.collect_config!
51
51
  data = data.merge(extra_fields) if extra_fields
52
- log_configuration!('CORE', data.to_json)
52
+ log_configuration!("CORE", data.to_json)
53
53
  end
54
54
  rescue => e
55
55
  logger.warn(
@@ -87,7 +87,7 @@ module Datadog
87
87
  # Best portable guess of OS information.
88
88
  # @return [String] platform string
89
89
  def os_name
90
- RbConfig::CONFIG['host']
90
+ RbConfig::CONFIG["host"]
91
91
  end
92
92
 
93
93
  # @return [String] datadog version
@@ -163,7 +163,7 @@ module Datadog
163
163
 
164
164
  # Outputs "k1:v1,k2:v2,..."
165
165
  def hash_serializer(h)
166
- h.map { |k, v| "#{k}:#{v}" }.join(',')
166
+ h.map { |k, v| "#{k}:#{v}" }.join(",")
167
167
  end
168
168
  end
169
169
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../metrics/client'
4
- require_relative '../../tracing/diagnostics/health'
3
+ require_relative "../metrics/client"
4
+ require_relative "../../tracing/diagnostics/health"
5
5
 
6
6
  module Datadog
7
7
  module Core
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'json'
4
- require 'msgpack'
3
+ require "json"
4
+ require "msgpack"
5
5
 
6
6
  module Datadog
7
7
  module Core
@@ -37,7 +37,7 @@ module Datadog
37
37
  module JSONEncoder
38
38
  extend Encoder
39
39
 
40
- CONTENT_TYPE = 'application/json'
40
+ CONTENT_TYPE = "application/json"
41
41
 
42
42
  module_function
43
43
 
@@ -64,7 +64,7 @@ module Datadog
64
64
 
65
65
  module_function
66
66
 
67
- CONTENT_TYPE = 'application/msgpack'
67
+ CONTENT_TYPE = "application/msgpack"
68
68
 
69
69
  def content_type
70
70
  CONTENT_TYPE
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../utils/fnv'
4
- require_relative 'process'
3
+ require_relative "../utils/fnv"
4
+ require_relative "process"
5
5
 
6
6
  module Datadog
7
7
  module Core
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'ext'
3
+ require_relative "ext"
4
4
 
5
5
  module Datadog
6
6
  module Core
@@ -23,7 +23,7 @@ module Datadog
23
23
  # Parses the /proc/self/cgroup file,
24
24
  # @return [Array<Entry>] one entry for each valid cgroup line
25
25
  def entries
26
- filepath = '/proc/self/cgroup'
26
+ filepath = "/proc/self/cgroup"
27
27
  return [] unless File.exist?(filepath)
28
28
 
29
29
  ret = []
@@ -46,7 +46,7 @@ module Datadog
46
46
  # @see https://man7.org/linux/man-pages/man7/cgroups.7.html#:~:text=%2Fproc%2Fpid%2Fcgroup
47
47
  # @return [Entry]
48
48
  def parse(entry_line)
49
- hierarchy, controllers, path = entry_line.split(':', 3)
49
+ hierarchy, controllers, path = entry_line.split(":", 3)
50
50
 
51
51
  Entry.new(
52
52
  hierarchy,
@@ -68,7 +68,7 @@ module Datadog
68
68
  # Example entry:
69
69
  # For the line "10:cpu,cpuacct:/docker/abc123", the path is
70
70
  # "/sys/fs/cgroup/cpu,cpuacct/docker/abc123"
71
- inode_path = File.join('/sys/fs/cgroup', controllers, path)
71
+ inode_path = File.join("/sys/fs/cgroup", controllers, path)
72
72
 
73
73
  File.stat(inode_path).ino if File.exist?(inode_path)
74
74
  end