datadog 2.44.0 → 2.46.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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +50 -2
  3. data/ext/datadog_profiling_native_extension/collectors_cpu_and_wall_time_worker.c +114 -141
  4. data/ext/datadog_profiling_native_extension/collectors_discrete_dynamic_sampler.c +1 -5
  5. data/ext/datadog_profiling_native_extension/collectors_gc_profiling_helper.c +0 -2
  6. data/ext/datadog_profiling_native_extension/collectors_idle_sampling_helper.c +13 -13
  7. data/ext/datadog_profiling_native_extension/collectors_idle_sampling_helper.h +5 -1
  8. data/ext/datadog_profiling_native_extension/collectors_stack.c +1 -0
  9. data/ext/datadog_profiling_native_extension/collectors_thread_context.c +106 -103
  10. data/ext/datadog_profiling_native_extension/collectors_thread_context.h +3 -3
  11. data/ext/datadog_profiling_native_extension/extconf.rb +2 -0
  12. data/ext/datadog_profiling_native_extension/heap_recorder.c +2 -2
  13. data/ext/datadog_profiling_native_extension/private_vm_api_access.c +102 -54
  14. data/ext/datadog_profiling_native_extension/private_vm_api_access.h +7 -2
  15. data/ext/datadog_profiling_native_extension/profiling.c +27 -23
  16. data/ext/datadog_profiling_native_extension/ruby_helpers.c +3 -1
  17. data/ext/datadog_profiling_native_extension/ruby_helpers.h +4 -0
  18. data/ext/datadog_profiling_native_extension/setup_signal_handler.c +0 -2
  19. data/ext/datadog_profiling_native_extension/stack_recorder.c +6 -24
  20. data/ext/datadog_profiling_native_extension/stack_recorder.h +0 -1
  21. data/ext/datadog_profiling_native_extension/time_helpers.c +2 -4
  22. data/ext/datadog_profiling_native_extension/time_helpers.h +10 -11
  23. data/ext/libdatadog_api/di.c +30 -5
  24. data/ext/libdatadog_api/extconf.rb +2 -0
  25. data/ext/libdatadog_api/otel_thread_context.c +20 -14
  26. data/ext/libdatadog_api/process_discovery.c +15 -1
  27. data/ext/libdatadog_api/trace_exporter.c +182 -36
  28. data/ext/libdatadog_extconf_helpers.rb +1 -1
  29. data/lib/datadog/core/configuration/components.rb +29 -8
  30. data/lib/datadog/core/configuration/supported_configurations.rb +5 -2
  31. data/lib/datadog/core/process_discovery.rb +5 -1
  32. data/lib/datadog/core/remote/client/capabilities.rb +34 -29
  33. data/lib/datadog/core/remote/component.rb +28 -12
  34. data/lib/datadog/core/remote/dispatcher.rb +13 -3
  35. data/lib/datadog/di/boot.rb +1 -0
  36. data/lib/datadog/di/capture_expression_evaluator/result.rb +30 -0
  37. data/lib/datadog/di/capture_expression_evaluator.rb +39 -9
  38. data/lib/datadog/di/component.rb +38 -3
  39. data/lib/datadog/di/configuration.rb +53 -2
  40. data/lib/datadog/di/context.rb +7 -2
  41. data/lib/datadog/di/contrib/active_record.rb +8 -2
  42. data/lib/datadog/di/evaluation_failure.rb +28 -0
  43. data/lib/datadog/di/guardrails_telemetry/reason.rb +87 -0
  44. data/lib/datadog/di/guardrails_telemetry.rb +203 -0
  45. data/lib/datadog/di/instrumenter.rb +65 -15
  46. data/lib/datadog/di/logger.rb +30 -8
  47. data/lib/datadog/di/probe_manager.rb +48 -5
  48. data/lib/datadog/di/probe_notification_builder.rb +28 -26
  49. data/lib/datadog/di/probe_notifier_worker.rb +56 -6
  50. data/lib/datadog/di/serializer.rb +130 -54
  51. data/lib/datadog/di/snapshot_event.rb +38 -0
  52. data/lib/datadog/di/transport/http.rb +13 -3
  53. data/lib/datadog/di/transport/input.rb +32 -7
  54. data/lib/datadog/open_feature/activation.rb +268 -0
  55. data/lib/datadog/open_feature/component.rb +31 -15
  56. data/lib/datadog/open_feature/provider.rb +282 -5
  57. data/lib/datadog/open_feature.rb +31 -1
  58. data/lib/datadog/profiling/collectors/cpu_and_wall_time_worker.rb +5 -0
  59. data/lib/datadog/profiling/component.rb +2 -3
  60. data/lib/datadog/profiling/exporter.rb +7 -5
  61. data/lib/datadog/tracing/component.rb +15 -1
  62. data/lib/datadog/tracing/configuration/settings.rb +6 -3
  63. data/lib/datadog/tracing/contrib/utils/quantization/http.rb +6 -3
  64. data/lib/datadog/tracing/diagnostics/environment_logger.rb +1 -0
  65. data/lib/datadog/tracing/otel_thread_context.rb +3 -5
  66. data/lib/datadog/tracing/transport/http/telemetry.rb +94 -0
  67. data/lib/datadog/tracing/transport/http/traces.rb +2 -0
  68. data/lib/datadog/tracing/transport/native/telemetry.rb +17 -0
  69. data/lib/datadog/tracing/transport/native.rb +38 -22
  70. data/lib/datadog/tracing/transport/telemetry.rb +62 -0
  71. data/lib/datadog/tracing/transport/traces.rb +82 -15
  72. data/lib/datadog/version.rb +1 -1
  73. metadata +16 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c60f4ef57b9508827fac3387bd07b4233666ed9d22684c0d063187d05dcfc449
4
- data.tar.gz: 6e795bd6f5fc8b5f59d040a4da62e636a15d12024ff4e6b5c2b10d0989c047ec
3
+ metadata.gz: 90e55c02331cafb4d96cd0dedf6edb09fc5a6c7f993ffd611d8ca13f12d42cdb
4
+ data.tar.gz: a99ea41f5975708838075815674c78e47a46ef8368188186d2e20653a8372b19
5
5
  SHA512:
6
- metadata.gz: 27f955e40d920907b2af84f36f8671f4e306235dce525be84da5221e2c66b852183974095afbbcc4acff4148e9202f585067e676d897b20da08c41e535846e9c
7
- data.tar.gz: 29f4f51331feb1e0a6e70437490b8067b9e4a6f561b55c7f1b5fff58ae326964d92cf8e2dcf16c31466b5f654b851a25e8b683322795573e5ee3742fb395f519
6
+ metadata.gz: 4061492c8bba7bf1238b6442d9275bbd7172978ecdbe4d4a92b53f0c67c2ca2d7b20947aaa42247fdc37ccbe81502710b4d69733e420e18fcd1e13d6e27b9864
7
+ data.tar.gz: 6fe366c5fcb305780a575c830bc77967be48605478071c1d16975242a95cb5c178b81dac776306f5b082b27770140174d29ad0c4dd7df3c9522b4a048883303f
data/CHANGELOG.md CHANGED
@@ -2,6 +2,37 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [2.46.0] - 2026-10-19
6
+
7
+ ### Added
8
+
9
+ * Tracing: Add OpenTelemetry Thread Context support on Linux so that compatible agents can correlate Workload Protection events with application traces. ([#6454][])
10
+ * Open Feature: Start Feature Flags delivery during provider initialization, including for applications that never receive traced requests. ([#6418][])
11
+
12
+ ### Changed
13
+
14
+ * SSI: Reduce the single-step injection init image by about 35 MB, lowering download size and disk use when installing the library. ([#6469][], [#6474][], [#6481][], [#6485][], [#6488][])
15
+ * Profiling: Upgrade `datadog-ruby_core_source` to support Ruby 4.1.0-preview1. ([#6470][])
16
+ * Dynamic Instrumentation: Bound snapshot captures by the `DD_DYNAMIC_INSTRUMENTATION_CAPTURE_TIMEOUT_MS` budget (default `150`). `DD_DYNAMIC_INSTRUMENTATION_MAX_TIME_TO_SERIALIZE` is deprecated. ([#6205][])
17
+
18
+ ## [2.45.0] - 2026-10-13
19
+
20
+ ### Changed
21
+
22
+ * Core: Begin the progressive rollout of the native trace exporter, enabling it by default on CRuby 4.0.0 and later. ([#6419][])
23
+
24
+ ### Fixed
25
+
26
+ * Tracing: Fix missing Agent URLs in startup diagnostics when using the native trace exporter. ([#6433][])
27
+ * Tracing: Fix child processes hanging during garbage collection after closing a native trace transport and then forking. ([#6433][])
28
+ * Tracing: Security: Fixes a security vulnerability, as described in [GHSA-p7cx-x3jr-jj6w](https://github.com/DataDog/dd-trace-rb/security/advisories/GHSA-p7cx-x3jr-jj6w). ([#6441][])
29
+ * Tracing: Fix ignored `c.agent.timeout_seconds` and `DD_TRACE_AGENT_TIMEOUT_SECONDS` settings when using the native trace exporter. ([#6433][])
30
+ * Tracing: Fix custom trace transports being replaced when native transport is enabled, restoring compatibility with `datadog-ci`. ([#6433][])
31
+ * Profiling: Fix a sampling race condition during profile serialization. ([#6377][])
32
+ * Profiling: Fix potential crash due to underflow when sampling. ([#6401][])
33
+ * Profiling: Fix additional crashes during garbage collection compaction when profiling is enabled. ([#6412][])
34
+ * AppSec: Fix APM statistics to be properly excluded when using the native trace exporter with APM tracing disabled. ([#6433][])
35
+
5
36
  ## [2.44.0] - 2026-10-07
6
37
 
7
38
  ### Added
@@ -3820,7 +3851,9 @@ Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
3820
3851
  Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
3821
3852
 
3822
3853
 
3823
- [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v2.44.0...master
3854
+ [Unreleased]: https://github.com/DataDog/dd-trace-rb/compare/v2.46.0...master
3855
+ [2.46.0]: https://github.com/DataDog/dd-trace-rb/compare/v2.45.0...v2.46.0
3856
+ [2.45.0]: https://github.com/DataDog/dd-trace-rb/compare/v2.44.0...v2.45.0
3824
3857
  [2.44.0]: https://github.com/DataDog/dd-trace-rb/compare/v2.43.0...v2.44.0
3825
3858
  [2.43.0]: https://github.com/DataDog/dd-trace-rb/compare/v2.42.0...v2.43.0
3826
3859
  [2.42.0]: https://github.com/DataDog/dd-trace-rb/compare/v2.41.0...v2.42.0
@@ -5650,6 +5683,7 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
5650
5683
  [#6142]: https://github.com/DataDog/dd-trace-rb/issues/6142
5651
5684
  [#6173]: https://github.com/DataDog/dd-trace-rb/issues/6173
5652
5685
  [#6176]: https://github.com/DataDog/dd-trace-rb/issues/6176
5686
+ [#6205]: https://github.com/DataDog/dd-trace-rb/issues/6205
5653
5687
  [#6213]: https://github.com/DataDog/dd-trace-rb/issues/6213
5654
5688
  [#6219]: https://github.com/DataDog/dd-trace-rb/issues/6219
5655
5689
  [#6220]: https://github.com/DataDog/dd-trace-rb/issues/6220
@@ -5669,11 +5703,25 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
5669
5703
  [#6364]: https://github.com/DataDog/dd-trace-rb/issues/6364
5670
5704
  [#6371]: https://github.com/DataDog/dd-trace-rb/issues/6371
5671
5705
  [#6375]: https://github.com/DataDog/dd-trace-rb/issues/6375
5706
+ [#6377]: https://github.com/DataDog/dd-trace-rb/issues/6377
5672
5707
  [#6394]: https://github.com/DataDog/dd-trace-rb/issues/6394
5673
5708
  [#6395]: https://github.com/DataDog/dd-trace-rb/issues/6395
5674
5709
  [#6398]: https://github.com/DataDog/dd-trace-rb/issues/6398
5710
+ [#6401]: https://github.com/DataDog/dd-trace-rb/issues/6401
5675
5711
  [#6407]: https://github.com/DataDog/dd-trace-rb/issues/6407
5712
+ [#6412]: https://github.com/DataDog/dd-trace-rb/issues/6412
5713
+ [#6418]: https://github.com/DataDog/dd-trace-rb/issues/6418
5714
+ [#6419]: https://github.com/DataDog/dd-trace-rb/issues/6419
5676
5715
  [#6427]: https://github.com/DataDog/dd-trace-rb/issues/6427
5716
+ [#6433]: https://github.com/DataDog/dd-trace-rb/issues/6433
5717
+ [#6441]: https://github.com/DataDog/dd-trace-rb/issues/6441
5718
+ [#6454]: https://github.com/DataDog/dd-trace-rb/issues/6454
5719
+ [#6469]: https://github.com/DataDog/dd-trace-rb/issues/6469
5720
+ [#6470]: https://github.com/DataDog/dd-trace-rb/issues/6470
5721
+ [#6474]: https://github.com/DataDog/dd-trace-rb/issues/6474
5722
+ [#6481]: https://github.com/DataDog/dd-trace-rb/issues/6481
5723
+ [#6485]: https://github.com/DataDog/dd-trace-rb/issues/6485
5724
+ [#6488]: https://github.com/DataDog/dd-trace-rb/issues/6488
5677
5725
  [@AdrianLC]: https://github.com/AdrianLC
5678
5726
  [@Azure7111]: https://github.com/Azure7111
5679
5727
  [@BabyGroot]: https://github.com/BabyGroot
@@ -5830,4 +5878,4 @@ Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1
5830
5878
  [@y-yagi]: https://github.com/y-yagi
5831
5879
  [@yujideveloper]: https://github.com/yujideveloper
5832
5880
  [@yukimurasawa]: https://github.com/yukimurasawa
5833
- [@zachmccormick]: https://github.com/zachmccormick
5881
+ [@zachmccormick]: https://github.com/zachmccormick