Breaking Changes
Warning
jnr-unixsocket is now an external dependency of dd-trace-ot and must be included when deploying dd-trace-ot.
Note
The API TracerScope.setAsync(boolean)
, used to manually control asynchronous span propagation, does no more apply to the scope instance but to the active span scope.
Components
Application Security Management (IAST)
- π Fix String.replace instrumentation for IAST (#8281 - @Mariovido)
- β¨ Apply the standard nomenclature to the stacktrace configs (#8244 - @jandro996)
- π Exclude false positive weak randomness (#8232 - @jandro996)
- β¨ Propagation of translateEscapes of String class (#8186 - @sezen-datadog)
- β¨ Add security control metrics (#8175 - @jandro996)
- β¨ Increase IAST propagation to StringBuffer setLength (#8128 - @Mariovido)
- β¨ Add IAST taint tracking for DB values (#8072 - @Mariovido)
Application Security Management (WAF)
- π Prevents a NPE when there is no subscriber for user events (#8258 - @manuel-alvarez-alvarez)
- β¨ Apply the standard nomenclature to the stacktrace configs (#8244 - @jandro996)
- π Ensure cached subscriptions are cleared on reconfiguration via RC (#8229 - @manuel-alvarez-alvarez)
- β¨ Add support for session tracking in Vertx (#8167 - @manuel-alvarez-alvarez)
- β¨ Create span tag: _dd.appsec.rasp.timeout (#8269 - @Mariovido)
Build & Tooling
Configuration at Runtime
Continuous Integration Visibility
- π§Ή Generalize TestRetryPolicy to TestExecutionPolicy (#8302 - @nikita-tkachenko-datadog)
- π§Ή Parallelize CI Visibility settings requests (#8299 - @nikita-tkachenko-datadog)
- π§Ή Generalize test retry logic (#8289 - @nikita-tkachenko-datadog)
- π§Ή Generalize tests skipping logic (#8288 - @nikita-tkachenko-datadog)
- π§Ή Remove skip and shouldBeSkipped methods from TestEventsHandler in favor of isSkippable (#8286 - @nikita-tkachenko-datadog)
- β¨β‘ Optimize Git repository information computation (#8270 - @dougqh)
- β¨ Always request known tests from the backend (#8268 - @nikita-tkachenko-datadog)
- β¨ Fix NPE when trying to get retry analyzer in Test NG (#8253 - @nikita-tkachenko-datadog)
- π Set test framework and test framework version tags atomically (#8252 - @nikita-tkachenko-datadog)
- β¨ Add debug logging to Android Gradle module layout logic (#8251 - @nikita-tkachenko-datadog)
- π Fix source and destination folders computation for Android Gradle projects (#8190 - @nikita-tkachenko-datadog)
- β¨ Add basic Scala Weaver sbt support (#8189 - @daniel-mohedano)
- β¨ Implement impacted tests detection (#8188 - @nikita-tkachenko-datadog)
Data Streams Monitoring
- β¨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema (#8201 - @vandonr)
Database Monitoring
- Add peer service tag in dbm sql commenter (#7913 - @jordan-wong)
Dynamic Instrumentation
- β¨ Add support for SymDB to scan directories (#8306 - @jpbempel)
- β¨ Add SymDB report for any jar scanning failures (#8300 - @jpbempel)
- β¨ Use two budgets depending on type (#8283 - @evanchooly)
- β¨ Institute a 10 snapshot per probe per trace budget (#8277 - @evanchooly)
- π Avoid double snapshots for Exception Replay (#8273 - @jpbempel)
- β¨ Simplify code origins. Separate out snapshot generation. (#8263 - @evanchooly)
- β¨ Add Exception probe custom instrumentation (#8230 - @jpbempel)
- β¨ Enhance log probes to honor debug session tags (#8215 - @evanchooly)
- π Don't redact env tokens from debugger probe snapshots (#8211 - @watson)
- β¨β‘ Move Trace/SpanId capture at commit time (#8184 - @jpbempel)
- π Capture values at entry for method probe (#8169 - @jpbempel)
JMX fetch
OpenTracing
Profiling
- π Avoid unsupported API call for creating folders on windows (#8304 - @jbachorik)
- β¨ Tag profiles for serverless (#8279 - @jbachorik)
- β¨ add queue type and length to queue events (#8242 - @richardstartin)
- π TempLocationManager Fixes and Improvements (#8191 - @jbachorik)
- β¨ Bump ddprof to 1.18.0 (#8173 - @jbachorik)
- β¨ Report profiler initialization and configuration errors to telemetry (#8171 - @jbachorik)
Telemetry
Testing
- β¨ Test http server requests in parallel (#8222 - @amarziali)
Trace context propagation
- β¨ Add non default propagator registration (#8310 - @PerfectSlayer)
Tracer core
- β¨ Probe for existence of IBMSASL or ACCP security providers (#8276 - @mcculls)
- β¨β‘ Overhead improvement to agent feedback based sampling (#8265 - @dougqh)
- π§Ή Move async propagation API from scope to tracer (#8231 - @PerfectSlayer)
- β¨ Introduce context propagation API (#8161 - @PerfectSlayer)
- β¨π§ͺ Use env-entry to add tags per webapp deployment (#8138 - @amarziali)
- β¨ Introduce context helpers API (#8134 - @PerfectSlayer)
- β¨ Support IPv6 values for
DD_AGENT_HOST
andDD_TRACE_AGENT_URL
(#7984 - @mhlidd)
Instrumentations
Apache HttpComponents
- π Properly finish spans and support latest apache httpclient5 (#8272 - @amarziali)
AWS Lambda instrumentation
- π Properly capture lambda payloads for all handler types. (#8264 - @purple4reina)
AWS S3 instrumentation
AWS SDK instrumentation
Cassandra
- β¨ Allow extracting keyspace from statement result (#8239 - @amarziali)
Core Java language instrumentation
- β¨ Propagation of translateEscapes of String class (#8186 - @sezen-datadog)
Eclipse Vert.x instrumentation
- π Fix vertx worker propagation and error handling (#8237 - @amarziali)
- β¨ Support vertx 5 (#8220 - @amarziali)
- β¨ Add support for session tracking in Vertx (#8167 - @manuel-alvarez-alvarez)
Kafka instrumentation
Mule instrumentation
- π Fix crash using Mule with JPMS (#8187 - @amarziali)
Protocol Buffer instrumentation
- β¨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema (#8201 - @vandonr)
Spring instrumentation
- π Preserve getQualifier from spring scheduling runnables (#8293 - @amarziali)