Skip to content

Releases: DataDog/dd-trace-java

1.47.1

13 Mar 08:46
v1.47.1
6c61c65
Compare
Choose a tag to compare

Components

Continuous Integration Visibility

Tracer core

  • ✨ 🍒 8544 - Make the default config sources more robust when a security manager is installed (#8545 - @mcculls)

1.47.0

05 Mar 14:28
v1.47.0
a951656
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

  • 🐛 Exclude com.stripe.net.HttpURLConnectionClient to solve IAST SSRF vulnerability false positives (#8483 - @jandro996)
  • 🐛 Add exclusion to solve IAST weak randomness vulnerability false positives (#8462 - @jandro996)
  • ✨ Fix weak randomness false positive in Kafka client (#8408 - @smola)
  • ✨ Fix location for SSRF with Kong Unirest (#8407 - @smola)
  • ✨ Exclude IBM Instana from IAST (#8406 - @smola)
  • 🐛 Fix org.json iast instrumentation test for latest dependency (#8347 - @jandro996)
  • ✨ Configuration to Disable APM Tracing (#8219 - @jandro996)
  • ✨ Address cookie vulnerability cardinality issues (#8210 - @jandro996)
  • ✨ Email HTML Injection detection in IAST (#8205 - @sezen-datadog)

Application Security Management (WAF)

Build & Tooling

  • 🐛 Do not generate Muzzle references for primitive arrays in method body (#8361 - @amarziali)
  • 📖 Improve dev env setup documentation for Windows (#8180 - @lucaspimentel)

Continuous Integration Visibility

Crash tracking

  • ✨ Only fork jps when required (#8419 - @mcculls)
  • 🐛 Use Java home of the crashed process to launch crash uploader (#8348 - @jbachorik)

Data Streams Monitoring

Database Monitoring

  • ✨ Add DBMTracePreparedStatements to tracer configuration log (#8508 - @cecile75)

Dynamic Instrumentation

Metrics

Profiling

Telemetry

Trace context propagation

Tracer core

Instrumentations

AWS Lambda instrumentation

  • 🐛 Send error message and stack to Lambda extension (#8417 - @nhulston)

AWS SDK instrumentation

Core Java language instrumentation

  • ✨ Look in another location for grpc service methods (#8468 - @evanchooly)
  • ✨ Add code origin support for spring-webmvc (#8416 - @evanchooly)
  • 💡 Implementation of BaggagePropagator and BaggageContext (#8330 - @mhlidd)
  • ✨ Add code origin support to kafka message listeners (#8301 - @evanchooly)

gRPC instrumentation

Kafka instrumentation

  • ✨ Add messaging.destination.name tag to kafka integrations (#8366 - @rarguelloF)

Protocol Buffer instrumentation

1.46.1

20 Feb 15:44
v1.46.1
8e02059
Compare
Choose a tag to compare

Components

Dynamic Instrumentation

Other changes

Library Injection

  • 🐛 Address partial library copy failures causing failed application startups in k8s.

1.46.0

30 Jan 20:55
2b2be1e
Compare
Choose a tag to compare

Known Bugs

Note

If you are experiencing issues with failed application startups in k8s, please update to the latest version.

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)

Application Security Management (WAF)

Build & Tooling

  • 🐛 Ensure shaded helpers have unique names when injected into class-loaders (#8192 - @mcculls)

Configuration at Runtime

  • 🐛 Remove filtering of DD_SERVICE and DD_ENV from the tracer (#8176 - @mhlidd)

Continuous Integration Visibility

Data Streams Monitoring

  • ✨ Change hash computation for protobuf to better represent impacting changes + save proto number in schema (#8201 - @vandonr)

Database Monitoring

Dynamic Instrumentation

JMX fetch

  • 🐛 Mute JMXFetch Shutdown in progress error (#8068 - @ygree)

OpenTracing

  • ⚠️🧹 Make jnr-unixsocket an explicit dependency of dd-trace-ot (#8307 - @mcculls)

Profiling

Telemetry

  • ✨ Add pending traces report in tracer flares (#8053 - @mhlidd)

Testing

Trace context propagation

Tracer core

Instrumentations

Apache HttpComponents

  • 🐛 Properly finish spans and support latest apache httpclient5 (#8272 - @amarziali)

AWS Lambda instrumentation

AWS S3 instrumentation

  • 💡 Create S3 instrumentation + add span pointers (#8075 - @nhulston)

AWS SDK instrumentation

  • 🐛 Revert "Add avoid double instrumenting lambda non-streaming handlers." (#8247 - @nhulston)

Cassandra

Core Java language instrumentation

Eclipse Vert.x instrumentation

Kafka instrumentation

  • 🐛 Prevent possible NPE calculating Kafka record header size (#8292 - @ygree)

Mule instrumentation

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)

All other instrumentations

  • Valkey instrumentation support (#8228 - @AhmadMasry - thanks for the contribution!)

1.45.2

22 Jan 13:22
400277e
Compare
Choose a tag to compare

Components

Application Security Management (WAF)

1.45.1

14 Jan 18:53
ec1744f
Compare
Choose a tag to compare

Components

Build & Tooling

  • 🐛 🍒 #8192 - Ensure shaded helpers have unique names when injected into class-loaders (#8193 - @mcculls)

Continuous Integration Visibility

Profiling

Instrumentations

Mulesoft

1.45.0

09 Jan 10:07
v1.45.0
73f194e
Compare
Choose a tag to compare

Breaking changes

Warning

Support for custom scope manager using OpenTelemetry tracer artifact (dd-trace-ot) is dropped.
Tracing with OpenTracing API and custom scope manager will continue to work on 1.44.x releases.

Components

Application Security Management (IAST)

Application Security Management (WAF)

Build & Tooling

  • 💡 Support instrumentation of repackaged libraries (#8153 - @mcculls)
  • ✨ Configure native image build setting for JDK-22 based GraalVM (#8092 - @MattAlp)

Database Monitoring

Dynamic Instrumentation

GraalVM native-image

  • ✨ Configure native image build setting for JDK-22 based GraalVM (#8092 - @MattAlp)

ML Observability (LLMObs)

Metrics

OpenTracing

Telemetry

Testing

  • 🐛 Remove restriction to not run vertx4 latest tests on java 17 (#8133 - @vandonr)

Tracer core

  • ✨ Defer remote components to avoid OkHttp class-loading side-effects (#8131 - @mcculls)
  • ✨ Improve Context API null handling and Javadoc (#8129 - @PerfectSlayer)
  • 🐛⚡ Avoid performing blocking I/O operation on application thread (#8120 - @mcculls)
  • 💡 Introduce a shared context component, independent of tracing (#8117 - @mcculls)
  • ✨ Improves ServiceNameCollector (#8109 - @amarziali)
  • Upgrade to ASM 9.7.1 (adds new constant for Java 24) (#8097 - @mcculls)
  • 🐛 Dynamically evaluate service name for message consumers (#8088 - @amarziali)

Serverless

  • 🐛 Add avoid double instrumenting lambda non-streaming handlers. (#8073 - @purple4reina)

Instrumentations

AWS SDK instrumentation

Eclipse Vert.x instrumentation

  • 🐛 Remove restriction to not run vertx4 latest tests on java 17 (#8133 - @vandonr)

JDBC instrumentation

Jetty instrumentation

  • 🐛 Ensure jetty 12 has servlet.path starting with / (#8093 - @github-actions[bot])

JMS instrumentation

  • 🧹 Re-use javax JMS module for jakarta namespace (#8155 - @mcculls)
  • 🧹 Group javax.jms instrumentations under a single module (#8154 - @mcculls)

Reactor instrumentation

  • 🐛 Reactor: early propagate span in context when subscribing (#8166 - @amarziali)

1.44.1

13 Dec 15:46
v1.44.1
13a9a2d
Compare
Choose a tag to compare

Components

Continuous Integration Visibility

1.44.0

12 Dec 15:07
v1.44.0
4573a38
Compare
Choose a tag to compare

Known Issues

Warning

This release contains a known issue that causes failures when using Test Optimization to trace JUnit 5 tests in a Maven project where Maven Surefire is configured with forkCount > 1.
The issue is fixed in v1.44.1

Breaking Changes

Warning

Support for X-Forwarded header is dropped from default client IP resolution.
It can still be re-activated using the dd.trace.client-ip-header=x-forwarded system property, or the DD_TRACE_CLIENT_IP_HEADER=x-forwarded environment variable. See #7946.

Components

Application Security Management (IAST)

  • ✨ Set unexpected IAST exceptions to debug log level (#8044 - @smola)
  • ✨ Increase IAST propagation to StringBuffer subSequence (#8038 - @Mariovido)
  • ✨ Increase IAST propagation to StringBuilder subSequence (#8026 - @Mariovido)
  • ✨ Add IAST propagation to String valueOf (#8013 - @Mariovido)
  • ✨ Increase IAST propagation to StringBuilder append (#8010 - @Mariovido)
  • ✨ Expand SSRF support in IAST to apache-httpclient-5 and apache-httpasyncclient-4 (#7920 - @Mariovido)

Build & Tooling

Continuous Integration Visibility

Crash tracking

Data Streams Monitoring

Dynamic Instrumentation

  • ✨ Add Micronaut 4 support for code origin for spans (#8039 - @jpbempel)
  • ✨ Refactor probe matching for methods (#8021 - @jpbempel)
  • ✨ Update the CodeOriginProbe fingerprint to not rely on a stack walk (#8016 - @evanchooly)
  • ✨ Implement code origin support for grpc server entry spans (#7942 - @evanchooly)

GraalVM native-image

  • 🐛 Update Graal build-time instrumentation config for TracePropagationStyle (#8065 - @MattAlp)
  • 🐛 Fix NoClassDefFoundError: Could not initialize class DDSpanLink$EncoderHolder in Graal native-image (#8036 - @mcculls)
  • 🐛🧹 Fix native-image generation of reactive applications (#8012 - @mcculls)

OpenTracing

  • 🧹 Custom ScopeManagers are deprecated and will be removed in a future release of dd-trace-ot (#8058 - @mcculls)

Tracer core

  • ✨🧪 Service naming: split by jee deployment (#8064 - @amarziali)
  • ✨ Exclude jboss mdb proxies from instrumenting (#8061 - @amarziali)
  • ✨ Add a built-in trace interceptor for keeping traces depending of their latency (#8040 - @cecile75)
  • 💡 Introduce marker mechanism for eagerly initializing helpers (#8028 - @mcculls)
  • 💡 Add JSON component (#7973 - @PerfectSlayer)
  • ⚠️ Remove support for X-Forwarded in client IP resolution (#7946 - @smola)

Instrumentations

Apache HttpComponents

  • ✨ Expand SSRF support in IAST to apache-httpclient-5 and apache-httpasyncclient-4 (#7920 - @Mariovido)

gRPC instrumentation

JDBC instrumentation

JMS instrumentation

  • 🐛 Protect mdb from instrumenting multiple time the same event (#8062 - @amarziali)

Kafka instrumentation

OpenTelemetry instrumentation

  • 🐛 Support using OpenTelemetry Event API inside @WithSpan annotated method (#8019 - @mcculls)

Reactor instrumentation

  • 🐛🧹 Fix native-image generation of reactive applications (#8012 - @mcculls)

Spring instrumentation

  • 🐛 Avoid double instrumenting lambdas on latest spring scheduling (#8005 - @amarziali)

All other instrumentations

1.43.0

25 Nov 13:10
f2d21ae
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

  • ✨ Add propagation to StringBuffer substring methods (#7992 - @Mariovido)
  • 🐛 Fix issue with call sites in super calls to constructor (#7991 - @manuel-alvarez-alvarez)
  • ✨ Add propagation to StringBuilder substring methods (#7980 - @Mariovido)
  • 🐛 Reset IAST request context on root span published (#7969 - @manuel-alvarez-alvarez)
  • ✨ Add propagation to String constructors with StringBuffer and StringBuilder (#7966 - @Mariovido)
  • 🐛 Do not reset IAST concurrent request counter (#7963 - @smola)
  • ✨ Exclude spark web from vulnerability locations (#7939 - @smola)
  • 🐛 Exclude dev.failsafe from IAST instrumentation (#7938 - @smola)
  • ✨ Exclude okio from vulnerability locations (#7937 - @smola)
  • ✨ Expand SSRF support in IAST to java.net.http.HttpClient (#7877 - @Mariovido)
  • Fix stack trace inconsistency between excluded frames in vulnerability location and metastruct stack trace (#7865 - @jandro996)
  • ✨🧪 Add experimental taint propagation to the String replace, replaceFirst, replaceAll methods (#7741 - @Mariovido)

Application Security Management (WAF)

Build & Tooling

Continuous Integration Visibility

Crash tracking

  • 🐛 Improve crashtracking support for older Bash versions (#7956 - @PerfectSlayer)
  • ✨ Adjust crash upload timeout (#7905 - @dougqh)
  • ✨ Use telemetry 'is_sensitive' attribute instead of redacting the crash stacktrace (#7899 - @jbachorik)

Data Streams Monitoring

Dynamic Instrumentation

  • 🐛 Fix integer json parsing probe definition (#7957 - @jpbempel)
  • 🐛 Fix NullPointerException Extracting Class symbols (#7934 - @jpbempel)
  • ✨ Avoid duplicate class symbol extraction (#7919 - @jpbempel)
  • Add outer exceptions support for Exception Replay (#7897 - @jpbempel)
  • 🐛 Fix memory leak in Exception Replay (#7885 - @jpbempel)
  • ✨ Consult the environment variable when setting the max users frames in code origin probes (#7881 - @evanchooly)

JMX fetch

Profiling

Telemetry

  • ✨ Collect git metadata for telemetry (#7951 - @jpbempel)
  • ✨ Fix dependency collection for new Spring Boot nested jars (#7931 - @smola)

Trace context propagation

  • 🐛 Fix baggages mapping configuration when only keys are provided (#7972 - @cecile75)
  • ✨ Updating Span Link creation due to header tag propagations for invalid spans (#7799 - @mhlidd)

Instrumentations

AWS Lambda instrumentation

AWS SDK instrumentation

  • 🐛 Fix AWS Payload Tagging prefix generation related to SdkPojo (#7882 - @ygree)

Jetty instrumentation

Kafka instrumentation

Netty instrumentation

Reactor instrumentation