Skip to content

Releases: DataDog/dd-trace-java

1.42.1

08 Nov 14:24
v1.42.1
df0ec27
Compare
Choose a tag to compare

Potentially Breaking Changes

Warning

There is a known issue with Kafka instrumentation that causes double tracing. As a result, Kafka 3.8+ is disabled by default until the double tracing issue is resolved.

Components

Dynamic Instrumentation

Profiling

Instrumentations

AWS SDK instrumentation

  • πŸ› Fix AWS Payload Tagging prefix generation related to SdkPojo (#7901 - @ygree)

Kafka instrumentation

  • Disable Kafka 3.8+ instrumentation by default (#7909 - @ygree)

Reactor instrumentation

  • πŸ› Protect currentContext access for reactor inner operators (#7895 - @amarziali)

1.42.0

04 Nov 17:20
6eac0b8
Compare
Choose a tag to compare

Known Issues

This release contains a critical bug that may cause intermittent crashes when using profiler.

To avoid this bug you can either upgrade to v1.42.1, revert to v1.41.2, or:

  • To greatly reduce the chance of crash, disable native stack collection via -Ddd.profilng.ddprof.cstack=no
  • To completely eliminate the chance of crash, turn off Datadog Java profiler via -Ddd.profiling.ddprof.enabled=false and use only JFR, when available

Components

Application Security Management (IAST)

Application Security Management (WAF)

Build & Tooling

Configuration at Runtime

  • πŸ› Fix remote config update operation (#7856 - @ValentinZakharov)
  • βœ¨πŸ” Fix relying on configId for remote config log level tracer flare change (#7788 - @cecile75)

Continuous Integration Visibility

Database Monitoring

Dynamic Instrumentation

JMX fetch

Profiling

Telemetry

  • πŸ› Fix telemetry logs default flag (#7833 - @smola)

Tracer core

  • πŸ› Prevent NPE setting null span baggage (#7848 - @PerfectSlayer)
  • Widen catch blocks to make agent discovery more tolerant (#7796 - @mcculls)
  • Fall back to ports when we cannot use auto-discovered unix domain sockets (#7794 - @mcculls)
  • Improve isolation of embedded JFFI dependency (#7789 - @mcculls)
  • ✨ Support DD_TRACE_<INTEGRATION>_ENABLED (#7718 - @mtoffl01)
  • ✨⚠️ Add support for TRACE_HTTP_CLIENT_TAG_QUERY_STRING and change default value of HTTP_CLIENT_TAG_QUERY_STRING to true (#7677 - @mhlidd)
  • Propagate AppSec blocking exceptions from bytebuddy supressions (#7516 - @manuel-alvarez-alvarez)

Instrumentations

Apache Spark instrumentation

  • πŸ› Fix default value for long-running spans with DJM (#7795 - @paul-laffon-dd)
  • Support for kafka lag metrics in spark streaming applications (#7474 - @kr-igor)

AWS SDK instrumentation

JAX-WS instrumentation

JDBC instrumentation

  • πŸ› Avoid metadata access in driver connect advice for Oracle sharded connections (#7812 - @mcculls)
  • πŸ› Do not parse DBInfo when no connection (#7800 - @amarziali)

Kafka instrumentation

Lettuce instrumentation

Reactor instrumentation

1.41.2

01 Nov 19:43
9280902
Compare
Choose a tag to compare

Components

Build & Tooling

1.41.1

18 Oct 15:09
v1.41.1
a4e2819
Compare
Choose a tag to compare

Components

Continuous Integration Visibility

Instrumentations

Apache Spark instrumentation

1.41.0

17 Oct 15:44
84d0670
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Application Security Management (WAF)

Build & Tooling

Continuous Integration Visibility

Crash tracking

Data Streams Monitoring

Dynamic Instrumentation

Telemetry

Testing

Tracer core

  • Avoid emission of endpoint events for client and producer root spans (#7732 - @richardstartin)
  • ✨ Add support for TRACE_HTTP_CLIENT_ERROR_STATUSES (#7694 - @mhlidd)
  • ✨ Remove version metadata for non DD_SERVICE spans (#7661 - @mhlidd)

Tracer public API

  • ✨ Add support for TRACE_HTTP_SERVER_ERROR_STATUSES (#7716 - @mhlidd)

Instrumentations

Core Java language instrumentation

Eclipse Vert.x instrumentation

  • πŸ› Avoid NPE on vertx end advice when parent span is not available (#7775 - @amarziali)

EventBridge instrumentation

  • πŸ’‘ Inject trace context into EventBridge detail (#7613 - @nhulston)

gRPC instrumentation

  • ✨⚠️ Disable grpc client message span by default (#7708 - @amarziali)

JDBC instrumentation

Kafka instrumentation

Micronaut instrumentation

  • Update Gradle dependencies and support micronaut 4.7.0 (#7759 - @github-actions[bot])

Protocol Buffer instrumentation

Reactor instrumentation

  • ✨ Add proper context propagation for reactive streams (#7644 - @amarziali)

All other instrumentations

  • πŸ› Finish spans for all handlers for Grizzly http client (#7772 - @amarziali)

1.40.2

16 Oct 14:34
v1.40.2
f3516e0
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Continuous Integration Visibility

Instrumentations

JDBC instrumentation

1.40.1

03 Oct 13:55
v1.40.1
35e4126
Compare
Choose a tag to compare

Components

Application Security Management (WAF)

Crash tracking

1.40.0

30 Sep 15:05
70ac474
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Application Security Management (WAF)

Continuous Integration Visibility

Dynamic Instrumentation

GraalVM native-image

  • πŸ› Enable profiling startForceFirst silently for native image builds (#7555 - @MattAlp)

Profiling

Telemetry

Tracer core

Tracer internal logging

Instrumentations

Akka instrumentation

Apache Spark instrumentation

AWS Lambda instrumentation

  • ✨ Parse 128 bit trace Id retuned by lambda extension (#7620 - @agocs)

Eclipse Vert.x instrumentation

  • πŸ› Vertx: wrap internal routes to let the context propagate for blocking handlers (#7563 - @amarziali)

GraphQL instrumentation

  • πŸ› prevent errors when dealing with MinimalStage in graphql (#7560 - @vandonr)

gRPC instrumentation

JDBC instrumentation

  • ✨ Add support for Intersystems IRIS jdbc driver (#7607 - @amarziali)

OpenTelemetry instrumentation

Reactor instrumentation

Redis instrumentation

Spring instrumentation

  • πŸ› Spring scheduling: ensure spans have no parent (#7583 - @amarziali)

All other instrumentations

  • ✨ Improve context propagation for rxjava1 observables (#7686 - @amarziali)
  • ✨ Google PubSub: implement switchable legacy tracing mode (#7564 - @amarziali)
  • πŸ› Tibco BW 5: fix child process parentship (#7414 - @amarziali)

1.39.1

24 Sep 16:07
4f03507
Compare
Choose a tag to compare

Components

Application Security Management (WAF)

  • πŸ› Fix Exploit Prevention capability announcement on remote config (#7670 - @smola)
  • πŸ› Update libsqreen library to 11.0.1 fixing fingerprint generation (#7669 - @smola)
  • πŸ› Fix NPE in RASP metrics (#7668 - @smola)
  • ✨ Reduce log level for "WAF object had not been closed" (#7667 - @smola)

Dynamic Instrumentation

  • πŸ› Add support of spring boot nested jar for SymDB (#7678 - @jpbempel)

Profiling

1.39.0

02 Sep 15:05
v1.39.0
352673a
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

  • πŸ› Do not skip ErrorReportValve.report in any case (#7489 - @smola)
  • ✨ Suppress internal exceptions in tomcat stacktrace leak detection (#7488 - @smola)
  • πŸ› Add exclusions for openid4java and seasar frameworks (#7417 - @manuel-alvarez-alvarez)
  • Add detection of untrusted deserialization in snakeyaml library (#7406 - @Mariovido)
  • ✨ Fix progagation for Untrusted Deserialization vulnerability (#7374 - @Mariovido)
  • Map JSP stack traces to file names (#7005 - @jandro996)

Application Security Management (WAF)

Cloud Workload Security (CWS)

  • Make cws-tls use the same JNA dependency as instrumentations (#7412 - @bantonsson)

Continuous Integration Visibility

Crash tracking

  • Make the warning in ScriptInitializer less scary (#7514 - @jbachorik)
  • 🧹 Improving crash tracking script initialization error handling (#7427 - @PerfectSlayer)
  • πŸ› Fix crash-tracking uploader script overwrite warning (#7386 - @jbachorik)

Data Streams Monitoring

  • ⚑ Don't recompute DSM pathway hash for known tags (#7307 - @vandonr)

Database Monitoring

Dynamic Instrumentation

GraalVM native-image

  • Avoid RemoteHostnameAdder.config resolution error when building Quarkus native images (#7480 - @mcculls)
  • Fix ClassNotFoundException: net.jpountz.lz4.LZ4JavaSafeCompressor when instrumenting Kafka 3.7 with Quarkus native (#7404 - @mcculls)
  • Fix unresolved field error when instrumenting Kafka 3.7 with Quarkus native (#7403 - @mcculls)

JMX fetch

Metrics

Profiling

Telemetry

  • πŸ” Enable telemetry logs for services using AppSec (#7534 - @smola)
  • πŸ” Enable telemetry logs for a subset of Java versions (#7475 - @PerfectSlayer)
  • Tag span metrics with 'otel.library' when we know it was created by an OTel extension (#7463 - @mcculls)
  • ✨ Reduce telemetry log messages per minute to 10 (#7410 - @smola)
  • ✨ Add Otel env var telemetry (#7391 - @cecile75)
  • ✨ Add telemetry app product change message (#7348 - @jandro996)
  • Adding InitializationTelemetry - e.g. guard rails reporting (#7287 - @dougqh)

Trace context propagation

  • ✨ Use W3C Trace Context trace ID as parent ID regardless of propagation style order (#7355 - @mtoffl01)

Tracer core

Instrumentations

Apache Spark instrumentation

  • Allow instrumented Spark trace linked to Openlineage originated context (#7450 - @yiliangzhou)

Armeria Instrumentation

  • OpenTelemetry drop-in fixes for Armeria HTTP (#7498 - @mcculls)

AWS SDK instrumentation

  • Avoid NullPointerException when publishing SNS messages to phone numbers (#7448 - @mcculls)

gRPC instrumentation

JDBC instrumentation

OpenTelemetry instrumentation

  • OpenTelemetry drop-in fixes for Apache Pulsar (#7500 - @mcculls)
  • OpenTelemetry drop-in fixes for Apache Dubbo (#7499 - @mcculls)
  • OpenTelemetry drop-in fixes for Armeria HTTP (#7498 - @mcculls)
  • Tag span metrics with 'otel.library' when we know it was created by an OTel extension (#7463 - @mcculls)
  • OpenTelemetry drop-in fixes for r2dbc (#7444 - @mcculls)

All other instrumentations

  • OpenTelemetry drop-in fixes for Apache Pulsar (#7500 - @mcculls)
  • OpenTelemetry drop-in fixes for Apache Dubbo (#7499 - @mcculls)
  • πŸ› Apache http client 4: do not copy all request headers on redirect (#7483 - @amarziali)
  • πŸ› Avoid finishing twice a servlet 3 async dispatch span (#7395 - @amarziali)

Other changes