Components
AI Guard
- ✨ Support
DD_APM_TRACING_ENABLED=falsefor AI Guard traces (#11885 - @claponcet)
Application Security Management (WAF)
- ✨ Update default AppSec ruleset to release 1.18.2 (#12099 - @jandro996)
- 🐛 Stamp
_dd.apm.enabledon every exported chunk when APM tracing is disabled (#12028 - @claponcet) - 🐛 Fix WafContext TOCTOU race resurrecting orphaned native contexts (#12024 - @jandro996)
- 🐛 Fix Metaspace leak in SCA Reachability retransform and opcode injection (#12013 - @jandro996)
- ✨ Report agentic onboarding marker in configuration telemetry (RFC-1113) (#11983 - @christophe-papazian)
- 🐛 Bound multipart text/plain field materialization in Jersey AppSec (#11944 - @jandro996)
- 🐛 Update
libddwaf-javato 17.4.0 (#11943 - @jandro996) - ✨ AppSec Lambda: Analyze HTTP response (#11750 - @claponcet)
- ✨ Add
server.request.body.files_contentAppSec address for Undertow and Play (#11726 - @jandro996) - ✨ Add
server.request.body.files_contentAppSec address for Akka HTTP (#11725 - @jandro996) - ✨ Add
server.request.body.files_contentAppSec address for Vert.x 3/4/5 (#11724 - @jandro996) - ✨ Add
server.request.body.files_contentAppSec address for Jetty (#11706 - @jandro996)
Build & Tooling
- ✨ Update JMXFetch to 0.52.1 (#12121 - @sarahchen6)
Continuous Integration Visibility
- 🐛 Restore JUnit4 test ordering on Gradle 9.3+ (#12098 - @daniel-mohedano)
- ✨ Add
ci.pipeline.display_nametag for Buildkite pipelines (#12079 - @gbrandrea) - ✨ Allow Gradle verification of Test Optimization dependencies (#12077 - @daniel-mohedano)
- ✨ Improve codeowners lookup performance (#12058 - @daniel-mohedano)
- 🐛 Fix GitLab codeowners exclusion handling (#12021 - @daniel-mohedano)
- 🐛 Stop retrying aborted Karate scenarios (#12015 - @daniel-mohedano)
- 🐛 Finish Karate tests after scenario post-processing (#12014 - @daniel-mohedano)
- 🐛 Avoid retrying untracked Karate scenarios (#12012 - @daniel-mohedano)
- ✨ Improve GitLab codeowners parsing (#11999 - @daniel-mohedano)
- ✨ Add code coverage report flags (#11981 - @juan-fernandez)
- ✨ Memoize per-test class analysis in a module-wide cache (#11969 - @daniel-mohedano)
- ✨ Add test reporting for Karate v2 (#11923 - @daniel-mohedano)
- ✨ Avoid error logging when parsing optional sections in codeowners file (#11881 - @daniel-mohedano)
- ✨ Add AGP usage visibility for Gradle projects (#11869 - @daniel-mohedano)
- ✨ Add Android/Robolectric visibility to Test Optimization spans (#11852 - @daniel-mohedano)
- ✨ Avoid final field modifications in Cucumber and Spock instrumentations (#11851 - @daniel-mohedano)
- 🐛 Fix Cucumber test retries running under Suite (#11850 - @daniel-mohedano)
- ✨ Avoid final field modification in JUnit5 instrumentation (#11752 - @daniel-mohedano)
Data Streams Monitoring
- 🧹 Remove full schema collection from Kafka, Avro, and Protobuf instrumentation (#12038 - @piochelepiotr)
- 🐛 Tag consumer spans with the pathway hash on every data streams checkpoint (#11808 - @ericfirth)
Dynamic Instrumentation
- 🐛 Avoid calling synchronized wrappers when capturing (#12106 - @tylfin)
- 🐛 Fix initialization of samplers for probe file (#12067 - @jpbempel)
- 🐛 Update record detection for fixed JDK (#12031 - @jpbempel)
- 🐛 Update MethodParameters detection for fixed JDK (#12025 - @jpbempel)
- 🐛 Fix NullPointerException in Exception Replay (#11976 - @jpbempel)
- 🐛 Avoid false warning when no stacktrace (#11971 - @jpbempel)
- ✨ Hoist local vars for exception probes (#11964 - @jpbempel)
- 🐛 Fix instrumenting metric probes for Kotlin (#11890 - @jpbempel)
ML Observability (LLMObs)
- ✨ Add LLMObs Tool Definitions API (#12072 - @sabrenner)
Metrics
- ✨ Emit additional metric tags on the OTLP stats export path (client-side stats) (#12069 - @dougqh)
- ✨ Add span-derived primary tags (CSS v1.3.0) (#11402 - @dougqh)
OpenFeature
- ✨ Add agentless Feature Flagging configuration source (#11892 - @leoromanovsky)
- ✨ Add experimental, gated feature-flag span enrichment (#11658 - @leoromanovsky)
Platform
- ✨ Improve JSON component (#12086 - @PerfectSlayer)
Profiling
- 🐛 Update java-profiler (ddprof) to 1.48.1 (#12133 - @kaahos)
- Gracefully disable the profiler instead of crashing when
libgcc_s.so.1is unavailable by @zhengyu123 in DataDog/java-profiler#689 - Avoid retaining invalid HotSpot VM method pointers during stack walking and JFR serialization by @jbachorik in DataDog/java-profiler#699
- Gracefully disable the profiler instead of crashing when
- 🐛 Update java-profiler (ddprof) to 1.48.0 (#12076 - @kaahos)
- Add native malloc/socket stack capture with profiler-hook frame skipping by @jbachorik in DataDog/java-profiler#648
- Add categorized native-memory accounting by @rkennke in DataDog/java-profiler#669
- Set up signal handlers before initializing VMStructs and protect
VMFlag::name()calls by @zhengyu123 in DataDog/java-profiler#674 - Make CodeCache
memoryUsage()accurate and live by @rkennke in DataDog/java-profiler#677 - Report the actual runtime-stubs cache size by @rkennke in DataDog/java-profiler#681
- Use
sigsetjmp/siglongjmpinstead ofsetjmp/longjmpby @zhengyu123 in DataDog/java-profiler#686
- 🐛 Update java-profiler (ddprof) to 1.47.0 (#12076 - @rkennke)
- Add all-native OTEL context write API — Phase 1 (PROF-15271) by @rkennke in DataDog/java-profiler#631
- Guard line-number-table copy against stale jmethodID by @jbachorik in DataDog/java-profiler#647
- Prevent duplicate trace_id after CallTraceHashTable expansion by @jbachorik in DataDog/java-profiler#659
- Fix native OOM from unbounded CallTraceHashTable expansion by @jbachorik in DataDog/java-profiler#670
- 🔐 Address CVE-2026-59949 by upgrading LZ4 to v1.11.1 (#12091 - @vandonr)
- 🐛 Migrate context bridge to the all-native DDProf API (Phase 2) (#11899 - @rkennke)
Testing
- ✨ Add APM test agent trace decoding (#12089 - @PerfectSlayer)
- ✨ Add decoded span assert rules (#12088 - @PerfectSlayer)
- ✨ Avoid null collection on decoded spans (#12087 - @PerfectSlayer)
- ✨ Add test agent session token support (#12050 - @PerfectSlayer)
Trace context propagation
Tracer core
- ✨ Fix propagation tag serialization for trace chunks (#12096 - @sarahchen6)
- ✨ Report OTLP export status in tracer startup log (#12062 - @bm1549)
- 🐛 Fix lookup-then-read race in GenerationalUtf8Cache.getUtf8 (#11917 - @dougqh)
- ✨ Wire per-component cardinality limits from Config (#11732 - @dougqh)
Tracer internal logging
- 💡 Enable secure random ID generation for AWS Lambda MicroVM environments (#11622 - @litianningdatadog)
Instrumentations
Apache Spark instrumentation
- ✨ Add Spark 4.0.0 test suite on JDK 17 to spark_2.13 (#12049 - @aboitreaud)
- ✨ Mix Databricks repair attempt into Spark parent trace id (#12022 - @aboitreaud)
Core Java language instrumentation
Kafka instrumentation
- 🧹 Remove full schema collection from Kafka, Avro, and Protobuf instrumentation (#12038 - @piochelepiotr)
- 🐛 Fix NoSuchElementException from unchecked
Optional.get()in Kafka consumer instrumentation (#12007 - @piochelepiotr)
Netty instrumentation
- 🐛 Keep Netty 4.1 server spans open until streaming responses complete (#11941 - @ygree)
- 🐛 Fix Netty 4.1 tracing for pipelined HTTP/1.1 responses (#11937 - @ygree)
OpenTelemetry instrumentation
- ✨ Telemetry for OTLP traces/metrics/logs (#12057 - @mcculls)
- ✨⚡ Limit growth of OTLP trace buffer (#12052 - @mcculls)
- ✨ Support OTLP export over "http/json" for traces, metrics, and logs (#12018 - @mcculls)
Protocol Buffer instrumentation
- 🧹 Remove full schema collection from Kafka, Avro, and Protobuf instrumentation (#12038 - @piochelepiotr)
RabbitMQ instrumentation
- 🐛 Use routing key as DSM topic for RabbitMQ default-exchange publishes (#11805 - @ericfirth)
Reactor instrumentation
- ✨ Support W3C baggage propagation across reactor-netty connect hand-off (#12027 - @mcculls)
- 🐛 Fix multicast context propagation race in reactor/reactive-streams (#11825 - @amarziali)
Spring instrumentation
- 🐛 Tag
@Asyncand@Scheduledspring-scheduling spans as errored on exception (#12071 - @ValentinZakharov)