Skip to content

Releases: DataDog/dd-trace-java

1.37.0

04 Jul 11:46
v1.37.0
1496a6c
Compare
Choose a tag to compare

Components

Application Security Management (WAF)

  • πŸ› Add missing appsec propagation tag on appsec events (#7262 - @jandro996)
  • πŸ› Set appsec.blocked in local root span (#7251 - @smola)

Continuous Integration Visibility

Crash tracking

Profiling

Instrumentations

Apache Spark instrumentation

JMS instrumentation

  • ✨ Trace JMS Queue and Topic producers when destination is explicit (#7266 - @amarziali)

All other instrumentations

  • Add ServiceTalk async context propagation instrumentation (#7241 - @ygree)
  • πŸ§ͺ Instrument Tibco BusinessWorks 5 and 6 (#7155 - @amarziali)

1.36.0

27 Jun 14:25
9f9d372
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Application Security Management (WAF)

Continuous Integration Visibility

Data Streams Monitoring

Dynamic Instrumentation

  • πŸ› Fix debugger batch upload URL when using UDS (#7166 - @mcculls)

Metrics

Profiling

Testing

Tracer internal logging

Instrumentations

AWS SDK instrumentation

  • πŸ› Do not modify readonly message attributes map on SNS integration (#7150 - @vandonr)

Kafka instrumentation

  • πŸ› Fix NPE when kafka consumer info is not available (#7190 - @amarziali)

OpenTelemetry instrumentation

  • Improve config mapping for OpenTelemetry extensions (#7193 - @mcculls)
  • Map OpenTelemetry environment variables to their Datadog equivalents (#7184 - @mcculls)
  • Add more tests aboutβ€―OpenTelemetry attributes conventions (#7163 - @PerfectSlayer)
  • Map OpenTelemetry muzzle references to Datadog equivalent (#7142 - @mcculls)
  • Map OpenTelemetry VirtualField to Datadog ContextStore (#7129 - @mcculls)

All other instrumentations

1.35.2

18 Jun 11:17
816e6b1
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Dynamic Instrumentation

  • πŸ› Fix debugger batch upload URL when using UDS (#7167 - @mcculls)

Tracer internal logging

Instrumentations

AWS SDK instrumentation

  • πŸ› SNS integration: do not modify readonly message attributes map (#7174 - @vandonr)

Kafka instrumentation

  • πŸ› Fix NPE when kafka consumer info is not available (#7195 - @amarziali)

OpenTelemetry instrumentation

  • Improve config mapping for OpenTelemetry extensions (#7194 - @mcculls)
  • Map OpenTelemetry environment variables to their Datadog equivalents (#7185 - @mcculls)
  • Map OpenTelemetry muzzle references to Datadog equivalent (#7172 - @mcculls)
  • Map OpenTelemetry VirtualField to Datadog ContextStore (#7171 - @mcculls)

Log4J2 instrumentation

1.35.1

18 Jun 09:06
9c5c8ab
Compare
Choose a tag to compare

This patch release was published as 1.35.2

Components

Application Security Management (IAST)

Dynamic Instrumentation

  • πŸ› Fix debugger batch upload URL when using UDS (#7167 - @mcculls)

Tracer internal logging

Instrumentations

AWS SDK instrumentation

  • πŸ› SNS integration: do not modify readonly message attributes map (#7174 - @vandonr)

Kafka instrumentation

  • πŸ› Fix NPE when kafka consumer info is not available (#7195 - @amarziali)

OpenTelemetry instrumentation

  • Improve config mapping for OpenTelemetry extensions (#7194 - @mcculls)
  • Map OpenTelemetry environment variables to their Datadog equivalents (#7185 - @mcculls)
  • Map OpenTelemetry muzzle references to Datadog equivalent (#7172 - @mcculls)
  • Map OpenTelemetry VirtualField to Datadog ContextStore (#7171 - @mcculls)

Log4J2 instrumentation

1.35.0

10 Jun 10:50
v1.35.0
97065ed
Compare
Choose a tag to compare

Known Issues

This release contains a critical bug that may break applications using AWS SNS with immutable message attributes.

To avoid this bug you can either upgrade to v1.35.2, revert to v1.34.0, or turn off the SNS integration with this JVM option
-Ddd.integration.sns.enabled=false or this environment variable DD_INTEGRATION_SNS_ENABLED=false.

Turning off the SNS integration won't change the traces collected, but may cause some SNS traces to become disconnected.

Potentially Breaking Changes

Warning

Enable by default the Spring Boot environment instrumentation that infers the service name to the value of spring.application.name if the user did not provide any DD_SERVICE configuration.
Check #7029 for more details and how to revert it.

Components

Application Security Management (IAST)

Application Security Management (WAF)

Build & Tooling

Cloud Workload Security (CWS)

  • πŸ› Fix the cws tracer on systems using musl libc (like alpine) (#7066 - @spikat)

Configuration at Runtime

  • ⚑ Only rebuild tracer tags when the remote-config 'tracing_tags' change (#6996 - @mcculls)

Continuous Integration Visibility

Data Streams Monitoring

Database Monitoring

  • Apply configured service name mapping to DBM-injected dddbs (#7064 - @vandonr)

Dynamic Instrumentation

  • πŸ› Ensure locals are in scope when generating metrics (#7121 - @jpbempel)
  • Remove too generic redaction keywords (#7117 - @jpbempel)
  • πŸ› Fix line probe in method with inline lambdas (#7099 - @jpbempel)
  • Report exception when deserializing config (#7092 - @jpbempel)
  • Add option to limit number of frames captured (#7083 - @jpbempel)
  • Add circuit breaker for Exception Debugging (#7074 - @jpbempel)
  • πŸ› Fix short circuiting of boolean expressions (#7060 - @jpbempel)
  • Add EXCEPTION_REPLAY_ENABLED config token (#7054 - @jpbempel)
  • πŸ›βš‘ Fix perf issue when accessing fields by reflection (#7052 - @jpbempel)
  • ✨ Add Throwable capturing fields support for JDK16+ (#7047 - @jpbempel)
  • πŸ” Add fingerprint info into Tracer flare (#7043 - @jpbempel)
  • πŸ›βš‘ Fix expensive folding only in debug level (#7042 - @jpbempel)
  • Protect Map and Set accesses to be only in-memory (#7032 - @jpbempel)
  • Remove debug log on sampling (#7021 - @jpbempel)
  • πŸ› Fix support of literals in Expression Language (#7018 - @jpbempel)
  • Fix log level and message for SymDB extraction (#7016 - @jpbempel)
  • πŸ› Fix ArrayIndexOutOfBoundsException in adjustLocalVarsBasedOnArgs (#7013 - @jpbempel)
  • Filter out Errors for Exception Debugging (#6997 - @jpbempel)
  • Add support of Set in Expression Language (#6992 - @jpbempel)

GraalVM native-image

  • Relocate JCTools (#7004 - @luneo7 - thanks for the contribution!)

Metrics

  • Bump java-dogstatsd-client to 4.4.0 (fix potential file-descriptor leak) (#7089 - @mcculls)

OpenTracing

  • Add a TracingFactory (since opentracing-tracerresolver 0.1.5) which resolves our tracer (#7102 - @mcculls)
  • Bumps opentracing-tracerresolver to 0.1.6 (#7093 - @fedefernandez - thanks for the contribution!)

Profiling

Telemetry

  • Report updated trace.sampling.rules to telemetry (#7106 - @mcculls)
  • Enable telemetry logs for IAST, CI Visibility and Dynamic Instrumentation users (#7017 - @smola)
  • Adding support for reporting remote config id (#7012 - @stanistan)
  • ✨ Add log file if size is not too big (#6993 - @cecile75)

Trace context propagation

  • Encode the last seen Datadog span ID within tracestate (#7067 - @am312)

Tracer core

Instrumentations

AWS SDK instrumentation

Core Java language instrumentation

gRPC instrumentation

  • Extend gRPC context propagation into WriteQueue, add queue timing to WriteQueue commands (#7110 - @richardstartin)

JDBC instrumentation

  • Add extra connection params as tags for JDBC statements (#7055 - @kr-igor)

Kafka instrumentation

Micronaut instrumentation

Netty instrumentation

  • πŸ› Don't always finish parent span in Netty client (#7126 - @amarziali)

OpenTelemetry instrumentation

  • Ensure manually created OpenTelemetry spans are compliant with trace metrics (#7138 - @mcculls)
  • Support custom OpenTelemetry context (#7118 - @mcculls)
  • ⚑ Avoid creating unnecessary OtelSpanContext… (#7116 - @mcculls)
  • Track OpenTelemetry propagated context (#7114 - @mcculls)
  • Runtime drop-in support for OpenTelemetry instrumentations (#7086 - @mcculls)

Spring instrumentation

  • ⚠️ Enable spring boot service name detection from spring.application.name (#7029 - @amarziali)

Other changes

1.35.0-RC1

06 Jun 12:31
64a0120
Compare
Choose a tag to compare
1.35.0-RC1 Pre-release
Pre-release

Warning

This is a release candidate and is not intended for use in production.
Please open an issue regarding any problems in this release candidate.

Components

Application Security Management (IAST)

Application Security Management (WAF)

Build & Tooling

Cloud Workload Security (CWS)

  • πŸ› Fix the cws tracer on systems using musl libc (like alpine) (#7066 - @spikat)

Configuration at Runtime

  • ⚑ Only rebuild tracer tags when the remote-config 'tracing_tags' change (#6996 - @mcculls)

Continuous Integration Visibility

Database Monitoring

  • πŸ› Apply configured service name mapping to DBM-injected dddbs (#7064 - @vandonr)

Data Streams Monitoring (DSM)

Dynamic Instrumentation

  • πŸ› Ensure locals are in scope when generating metrics (#7121 - @jpbempel)
  • Remove too generic redaction keywords (#7117 - @jpbempel)
  • πŸ› Fix line probe in method with inline lambdas (#7099 - @jpbempel)
  • Report exception when deserializing config (#7092 - @jpbempel)
  • Add option to limit number of frames captured (#7083 - @jpbempel)
  • Add circuit breaker for Exception Debugging (#7074 - @jpbempel)
  • πŸ› Fix short circuiting of boolean expressions (#7060 - @jpbempel)
  • Add EXCEPTION_REPLAY_ENABLED config token (#7054 - @jpbempel)
  • πŸ›βš‘ Fix perf issue when accessing fields by reflection (#7052 - @jpbempel)
  • ✨ Add Throwable capturing fields support for JDK16+ (#7047 - @jpbempel)
  • πŸ” Add fingerprint info into Tracer flare (#7043 - @jpbempel)
  • πŸ›βš‘ Fix expensive folding only in debug level (#7042 - @jpbempel)
  • Protect Map and Set accesses to be only in-memory (#7032 - @jpbempel)
  • Remove debug log on sampling (#7021 - @jpbempel)
  • πŸ› Fix support of literals in Expression Language (#7018 - @jpbempel)
  • Fix log level and message for SymDB extraction (#7016 - @jpbempel)
  • πŸ› Fix ArrayIndexOutOfBoundsException in adjustLocalVarsBasedOnArgs (#7013 - @jpbempel)
  • Filter out Errors for Exception Debugging (#6997 - @jpbempel)
  • Add support of Set in Expression Language (#6992 - @jpbempel)

GraalVM native-image

  • Relocate JCTools (#7004 - @luneo7 - thanks for the contribution!)

Metrics

  • Bump java-dogstatsd-client to 4.4.0 (fix potential file-descriptor leak) (#7089 - @mcculls)

OpenTracing

  • Add a TracingFactory (since opentracing-tracerresolver 0.1.5) which resolves our tracer (#7102 - @mcculls)
  • Bump opentracing-tracerresolver to 0.1.6 (#7093 - @fedefernandez - thanks for the contribution!)

Profiling

Telemetry

  • Report updated trace.sampling.rules to telemetry (#7106 - @mcculls)
  • Enable telemetry logs for IAST, CI Visibility and Dynamic Instrumentation users (#7017 - @smola)
  • Adding support for reporting remote config id (#7012 - @stanistan)
  • ✨ Add log file if size is not too big (#6993 - @cecile75)

Tracer core

Instrumentations

AWS SDK instrumentation

Core Java language instrumentation

JDBC instrumentation

  • Extra connection params as tags for JDBC statements (#7055 - @kr-igor)

Kafka instrumentation

Micronaut instrumentation

Netty instrumentation

  • πŸ› Don't finish parent span when instrumenting a client (#7126 - @amarziali)

OpenTelemetry instrumentation

  • Support custom OpenTelemetry context (#7118 - @mcculls)
  • ⚑ Avoid creating unnecessary OtelSpanContext when extracting context from OTel wrapper around Datadog span (#7116 - @mcculls)
  • Track OpenTelemetry propagated context (#7114 - @mcculls)
  • Runtime drop-in support for OpenTelemetry instrumentations (#7086 - @mcculls)

Spring instrumentation

  • ⚠️ Enable spring boot service name detection from spring.application.name (#7029 - @amarziali)

1.34.0

08 May 17:22
6666f39
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Application Security Management (WAF)

Configuration

Configuration at Runtime

  • πŸ’‘ Accept trace sampling rules via remote-config (#6987 - @mcculls)

Continuous Integration Visibility

Data Streams Monitoring (DSM)

  • Set DSM checkpoints for S3 put / get operations (#6859 - @kr-igor)

Dynamic Instrumentation

OpenTracing

Profiling

Testing

Tracer core

  • πŸ’‘ Adding sampling provenance/mechanism to SamplingRules (#6989 - @dougqh)
  • ⚑ Check target super-class implements FieldBackedContextAccessor before delegating to it (#6950 - @mcculls)
  • πŸ§ͺ Support deferred matching and transformation for particular class-loaders (#6887 - @mcculls)
  • Add enabledProducts tag to all spans (APM / DSM / DJM) (#6967 - @kr-igor)

Instrumentations

Akka instrumentation

Apache Spark instrumentation

OpenTelemetry instrumentation

Protobuf Instrumentation

Scala instrumentation

1.33.0

18 Apr 11:02
v1.33.0
a1463c6
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

  • Admin Console Active vulnerability hash calculation (#6897 - @jandro996)
  • Remove deduplication for session rewriting vulnerability report (#6895 - @jandro996)
  • Exclude oracle.j2ee from vulnerability locations (#6888 - @smola)
  • Add directory listing support to WEBLOGIC, WEBSPHERE and JETTY (#6871 - @jandro996)
  • Detect Tomcat's host manager tomcat application as admin console (#6867 - @jandro996)
  • Add session rewriting detection (#6692 - @jandro996)

Application Security Management (WAF)

Continuous Integration Visibility

Data Streams Monitoring

GraalVM native-image

  • Register SpanLinkAdapter and SpanLinkJson for reflection (#6892 - @luneo7 - thanks for the contribution!)

Profiling

Tracer core

Instrumentations

Kafka instrumentation

1.32.0

04 Apr 15:20
v1.32.0
c1ae1bc
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Application Security Management (WAF)

Configuration at Runtime

Continuous Integration Visibility

Data Streams Monitoring

  • πŸ› Fix KStreams with dynamic queue names (#6857 - @kr-igor)

Dynamic Instrumentation

GraalVM native-image

  • Enhance 'runtime_version' tag to encode graalvm source (#6788 - @jbachorik)

Library Injection

Metrics

  • Bump JMXFetch integrations-core submodule to 7.52.0 (#6852 - @mcculls)

Profiling

Tracer core

  • πŸ› Fix Datadog-Entity-ID detection paths joining (#6864 - @ygree)
  • ⚑ Keep track of public classes in compact filter (#6860 - @mcculls)
  • πŸ› Fix Datadog-Entity-ID detection by skipping a root inode (#6858 - @ygree)
  • ✨ Support ordering of InstrumenterModules (#6840 - @mcculls)
  • ⚑🧹 Re-use helpers across all instrumenters in a module (#6822 - @mcculls)
  • 🧹 Update instrumentations to use InstrumenterModule as the service type (#6808 - @mcculls)

Instrumentations

Apache Spark instrumentation

  • create SpanLink from spark.streaming_batch span to databricks.task.execution span for spark instrumentation if applicable. (#6816 - @yiliangzhou)

JDBC instrumentation

  • πŸ› Fix for MySQL multi-host internally_generated connection urls (#6853 - @ygree)
  • Handle comment injection for procedure CALLs (#6807 - @sethsamuel)
  • Add host and db name to tags injected in SQL comments (#6778 - @vandonr)

All other instrumentations

  • Optionally prevent undertow from setting http.route (#6841 - @amarziali)
  • πŸ’‘ Support JDK-21 virtual thread executor (#6789 - @am312)

Other changes

1.31.2

12 Mar 13:01
39f09a5
Compare
Choose a tag to compare

Components

Application Security Management (IAST)

Telemetry

  • πŸ› Fix nested JAR resolver when URI has no trailing slash (#6794 - @smola)
  • πŸ› Fix logged exception for dependency URIs representing directories (#6792 - @smola)