Components
Application Security Management (IAST)
- π Skip XSS check for freemarker built-in escaping expressions in 2.3.24 instrumentation (#10865 - @jandro996)
Application Security Management (WAF)
- β¨ Add server.request.body.filenames support for Tomcat and Netty 4.1 (#10973 - @jandro996)
- β¨ Add server.request.body.filenames AppSec address for commons-fileupload (#10949 - @jandro996)
- β¨π§ͺ Return AIβ―Guard SDS findings into SDK Response (#10821 - @obordeau)
- π Fix ObjectIntrospection exposing JDK internal toString() to the WAF (#10820 - @jandro996)
- β¨ Honor in-app blocking settings by default in AI Guard evaluate (#10818 - @smola)
- π Fix HttpEndpointPostProcessor incorrectly overwriting span resource name (#10754 - @jandro996)
- β¨ Add http.status_code, error, and http.useragent to inferred proxy spans (#10749 - @jandro996)
- π Fix content-type extraction for akka-http (#10742 - @jandro996)
- β¨π§ͺ Attach SDS findings to ai_guard spans (#10721 - @obordeau)
- π Fix missing http.response.headers.content-type span tag on blocking responses (#10711 - @jandro996)
- π Fix AWS API Gateway endpoints correlation HTTP span tags - Inferred Proxy Spans (#10561 - @jandro996)
Configuration
- β¨ Guarantee OTel Configs to run through
ConfigHelper(#11057 - @mhlidd) - β¨ Update
supported-configurations.jsonw/ Missing Configs (#11046 - @mhlidd) - β¨ Update JUnit Tests to run with
STRICT_TESTmode by default (#11045 - @mhlidd) - β¨ Update
ConfigHelperto throw error inSTRICT_TESTmode and capture undocumented Configs (#11031 - @mhlidd)
Continuous Integration Visibility
- π Include all candidate paths for duplicate keys in coverage reports (#10997 - @daniel-mohedano)
- β¨ Implement configuration error tagging for all backend requests (#10963 - @daniel-mohedano)
- π Fix Test Management telemetry (#10962 - @daniel-mohedano)
- β¨ Add support for Weaver 0.12 release (#10903 - @daniel-mohedano)
- β¨ Consider empty parameters as null in TestIdentifier creation (#10902 - @daniel-mohedano)
- β¨ Add error tag for library configuration request (#10856 - @daniel-mohedano)
- β¨ Add Java 26 support to CI Visibility (#10839 - @daniel-mohedano)
- β¨β‘ Use HashingUtils hash in CI Visibility (#10784 - @dougqh)
Crash Tracking
- β¨ Feature flag crashtracking extended info, and improve runtime args filtering (#11048 - @bric3)
- π Unset
ld_preloadanddyld_insert_librariesfor crashtracker child JVM (#11041 - @gyuheon0h) - β¨ Report JVM argument flags for crash tracking (#11013 - @bric3)
- β¨ Reports loaded libraries in crashtracking reports (#11000 - @bric3)
- πβ¨ Add crashtracking addresses and error thread name (#10984 - @bric3)
- β¨ Properly handle OpenJ9 crash report (#10976 - @bric3)
- π Fix crashtracking siginfo missed some information (#10907 - @bric3)
- π Change error tracking crashtracker source (#10848 - @amarziali)
- π Unset inherited JVM env vars in crashtracking scripts (#10819 - @jbachorik)
Database Monitoring
- π Fix Oracle DBM trace correlation (#10829 - @azhou-datadog)
Dynamic Instrumentation
- π Fix NullPointerException in ExceptionProbe (#11051 - @jpbempel)
- π Fix NullPointerException in Fingerprinter (#11049 - @jpbempel)
- π Fix capture limit for capture expressions (#11042 - @jpbempel)
- π Fix CodeOrigin for interface endpoints (#11017 - @jpbempel)
- β¨ Optimize Lambda proxy class matching on filtering (#10905 - @jpbempel)
- π Fix Kotlin fake source mapping (#10880 - @jpbempel)
- π Fix NullPointerException in SymbolExtractor (#10858 - @jpbempel)
- π Handle exception from retrieving git info (#10853 - @jpbempel)
- π Change MethodParameters detection reporting (#10849 - @jpbempel)
- π Prevent retransforming record with type annotation (#10824 - @jpbempel)
- π Prevent instrumenting debugger agent classes (#10803 - @jpbempel)
- π Catch exception from detecting MethodParameters (#10779 - @jpbempel)
- π Prevent instrumenting first line of a constructor (#10772 - @jpbempel)
- π Catch exceptions in registerSourceFile (#10752 - @jpbempel)
- π Use SpringVersion to detect MethodParameters usage (#10750 - @jpbempel)
- π Fix Spring detection (#10740 - @jpbempel)
- π Add an error sampler for Log probes (#10638 - @jpbempel)
Logs Product
ML Observability (LLMObs)
- β¨ Propagate global dd_tags to LLMObs span tags (#10978 - @ygree)
- π Fix openai-java payload mapping for responses, tool metadata, and prompt tracking (#10644 - @ygree)
Metrics
- β¨ Add GitCommitSha to the client stats (#10833 - @amarziali)
- π Report gRPC status code in client-computed stats (#10805 - @bric3)
- β¨β‘ Reduce memory allocation from client-side stats (#10705 - @dougqh)
- β¨ Reduce verbosity of StatsD connection errors (#10618 - @PerfectSlayer)
OpenFeature
- π Allow null targeting key for static and rule-only flags (#10990 - @leoromanovsky)
Platform
- β¨ Add HTTP component API module (#10770 - @PerfectSlayer)
Profiling
- β¨ Enable live heap profiling by default on safe JVM versions (#11039 - @jbachorik)
- β¨ Update Java profiler library to 1.40.1 (#10995 - @jbachorik)
- β¨ Remove experimental jvmti wallclock profiler (#10872 - @zhengyu123)
Telemetry
- β¨ Update Environment Variable Normalization to not add DD prefix for OTel Configs (#11044 - @mhlidd)
- π Report dd-java-agent itself as a Maven dependency in SCA telemetry (#10975 - @jandro996)
- β¨ Add stable session ID headers to telemetry requests (#10914 - @khanayan123)
- β¨ Update Telemetry Key Normalization to Use Environment Variables (#10823 - @mhlidd)
- β¨β‘ Replace Objects.hash with HashingUtils.hash in telemetry (#10813 - @dougqh)
- β¨β‘ Reduce allocation overhead of ExceptionLogger / LogCollector (#10684 - @dougqh)
Testing
- β¨ Update JUnit Tests to run with
STRICT_TESTmode by default (#11045 - @mhlidd) - π Fix final_status workaround (#10852 - @cbeauchesne)
- π§Ή Refactor tests following Java migration (#10733 - @jpbempel)
Trace context propagation
- π Improve VirtualThread context tracking instrumentation (#11009 - @PerfectSlayer)
- π Fix VirtualThread support on multiple unmount/remount cycles (#10931 - @PerfectSlayer)
Tracer core
- β¨ Use TagMap.set in CoreTracer tracer tags (#11004 - @dougqh)
- β¨β‘ Replace interceptors ConcurrentSkipListSet with priority ordered copy on write "list" (#11002 - @dougqh)
- β¨β‘ Cache Tracer Host Entry to reduce allocation in RemoteHostnameAdder (#10968 - @dougqh)
- β¨ Add ObjectInputStream.readObject to forbidden apis (#10952 - @dougqh)
- β¨ Add ParentBasedAlwaysOnSampler as default sampler for OTLP trace export mode (#10915 - @mtoffl01)
- π Handle the case the info response does not contain endpoints / empty (#10838 - @amarziali)
- β¨β‘ Use forEach to avoid Iterator allocation (#10830 - @dougqh)
- β¨β‘ Avoid ArrayList copying from TraceInterceptors (#10828 - @dougqh)
- β¨β‘ Avoid creation of empty CopyOnWriteArrayList for span links (#10822 - @dougqh)
- β¨ Update BaseHash when process tags are updated (#10809 - @amarziali)
- β¨ Add _dd.p.ksr propagated tag for Knuth sampling rate (#10802 - @bm1549)
- β¨ Add capped sampling rate increases (#10715 - @raphaelgavache)
- β¨β‘ Avoid boxing by using TagMap.set in PayloadTagsProcessor (#10964 - @dougqh)
- β¨π§ͺ Add tracing support for native method calls via Java FFM API (#10718 - @amarziali)
Tracer internal logging
Instrumentations
Apache Spark instrumentation
- π Fix EMR Spark support by using Seq instead of ArrayBuffer for externalAccums (#10987 - @aboitreaud)
- π Fix spark application spans status on sql analysis failure (#10981 - @aboitreaud)
- π Fix sql plan nodes order causing test flakiness (#10911 - @aboitreaud)
- π Fix flaky test assertion by normalizing column ref and plan_id num (#10757 - @aboitreaud)
- β¨ Capture time app-related metrics for launchers (#10708 - @aboitreaud)
- π Remove Wrong Spark Spans for Inactive Databricks Clusters (#10651 - @larakulkarni1)
- β¨ Store accumulator-stage lookups directly (#10645 - @charlesmyu)
- β¨ Track external accumulators in tracer instead of using SparkInfo values (#10553 - @charlesmyu)
Armeria Instrumentation
AWS SDK instrumentation
Core Java language instrumentation
- π Improve VirtualThread context tracking instrumentation (#11009 - @PerfectSlayer)
- π Fix VirtualThread support on multiple unmount/remount cycles (#10931 - @PerfectSlayer)
- π§Ή Disable outdated RMI instrumentation (#10897 - @PerfectSlayer)
- ππ Use primitive types for RMI context payload serialization (#10935 - @PerfectSlayer)
- β¨ Mute tracing for agent http calls (#10690 - @PerfectSlayer)
gRPC instrumentation
JDBC instrumentation
- π Avoid IndexOutOfBound when parsing dbInfo without host (#10835 - @amarziali)
- β¨β‘ Replace Objects.hash with HashingUtils in DBInfo (#10783 - @dougqh)
Kafka instrumentation
- π‘ Capture kafka producer and consumer configs (#10697 - @piochelepiotr)
OpenTelemetry instrumentation
Spring instrumentation
- π Fix Spring messaging Kotlin async aware instrumentation (#11047 - @ygree)
- β¨ Support CompletableFuture on Spring Messaging Spans (#10979 - @mhlidd)
All other instrumentations
- π§Ή Separate context tracking from tracing on http client instrumentations (#10782 - @amarziali)
- π§Ή Split tracing and context tracking in server and messaging integrations (#10767 - @amarziali)