Releases: DataDog/dd-trace-java
0.12.0
New Instrumentation (disabled by default)
- gRPC client and server 1.5+ #388
- System property: dd.integration.grpc.enabled=true
- Environment variable: DD_INTEGRATION_GRPC_ENABLED=true
- Akka HTTP client #377
- System property: dd.integration.akka-http.enabled=true
- Environment variable: DD_INTEGRATION_AKKA-HTTP_ENABLED=true
Improvements
- Better compatibility with other trace clients #392
- Support unsigned 64 bit, instead of just 63 bits (signed).
- Allow mapping on configured service name #398
- Restructure spans created by HttpUrlConnection instrumentation #386
- Still disabled by default. Enable as follows:
- System property: dd.integration.httpurlconnection.enabled=true
- Environment variable: DD_INTEGRATION_HTTPURLCONNECTION_ENABLED=true
- Still disabled by default. Enable as follows:
- Improve Java 10 compatibility by removing cases of reflection #400 #414
- Simplify Servlet instrumentation and improve async handling #405
- Support OpenTracing
service
andpeer.service
tags for service naming #394 - Allow
DDTraceResolver
to be disabled via config #415- System property: dd.trace.resolver.enabled=false
- Environment variable: DD_TRACE_RESOLVER_ENABLED=false
- Ignore empty value tags for
dd.span.tags
config #418 - Improve netty instrumentation handling when not using the
netty-all
dependency #411- Known issue with instrumentation when
ChannelPipeline
interface isn't loaded before the implementing class. Fixed in 0.13.0 #426
- Known issue with instrumentation when
0.11.0
0.10.0
New Instrumentation (disabled by default)
- Netty Http Server and Client Instrumentation #352
- System property: dd.integration.netty.enabled=true
- Environment variable: DD_INTEGRATION_NETTY_ENABLED=true
- Generic JSP Instrumentation and Tomcat Jasper JSP Compilation Instrumentation #354
- System property: dd.integration.jsp.enabled=true
- Environment variable: DD_INTEGRATION_JSP_ENABLED=true
- Akka-Http Server Instrumentation #350
- Instrumentation supports the Lagom Framework as well
- System property: dd.integration.akka-http.enabled=true
- Environment variable: DD_INTEGRATION_AKKA-HTTP_ENABLED=true
- Lettuce 5 redis client integration #336
- System property: dd.integration.lettuce.enabled=true
- Environment variable: DD_INTEGRATION_LETTUCE_ENABLED=true
- Elasticsearch Client Instrumentation #329
- System property: dd.integration.elasticsearch.enabled=true
- Environment variable: DD_INTEGRATION_ELASTICSEARCH_ENABLED=true
- URLConnection Instrumentation #340
- Includes HttpURLConnection
- System property: dd.integration.httpurlconnection.enabled=true
- Environment variable: DD_INTEGRATION_HTTPURLCONNECTION_ENABLED=true
- Spymemcached Instrumentation #353
- System property: dd.integration. spymemcached.enabled=true
- Environment variable: DD_INTEGRATION_SPYMEMCACHED_ENABLED=true
Improvements
- Add Correlation Identifier for use with logging MDC Frameworks #345
- Set Servlet’s user-principal as a tag when available #371
- Reduce rounding errors for sub-ms spans #358
- Enhance JMS receive instrumentation #360
- Trace calls without messages to consume
- Instrument
wait(timeout)
calls
- Enhance threadpool instrumentation to work with SlickDB #341
Bugfixes
0.9.0
Improvements
- Enabled the following instrumentation by default: (#332)
- Play 2
- Hystrix
- Jax-RS Client
Bugfixes
0.8.0
Improvements
- Enabled the following instrumentation by default
- Dynamically rename services via configuration (#314)
- Useful for making databases have distinct names across different services.
- Configure mapping as follows:
- System property:
dd.service.mapping=mysql:my-service-db,cassandra:my-service-cassandra
- Environment variable:
DD_SERVICE_MAPPING=mysql:my-service-db,cassandra:my-service-cassandra
- System property:
- Automatically set service name based on servlet context (war file name) if not already configured or configured, but empty. (#320)
- Improved instrumentation for AWS client: (#299)
- This includes a change to the resource name.
- Automatically detect non-Datadog
@Trace
annotations (#311)- List of annotations can be replaced (or disabled with an empty list) using the following setting:
- System property:
dd.trace.annotations=com.some.Trace;io.other.Trace
- Environment variable:
DD_TRACE_ANNOTATIONS=com.some.Trace;io.other.Trace
- System property:
- List of annotations can be replaced (or disabled with an empty list) using the following setting:
- Configure additional methods to be traced without code change: (#311)
- System property:
dd.trace.methods=package.ClassName[method1,method2,...];AnonymousClass$1[call]
- Environment variable:
DD_TRACE_METHODS=package.ClassName[method1,method2];AnonymousClass$1[call]
- System property:
- Automatically set a configured header value as a span tag (#317)
- System property:
dd.trace.header.tags=CASE-insensitive-Header:my-tag-name,User-ID:userId
- Environment variable:
DD_TRACE_HEADER_TAGS=CASE-insensitive-Header:my-tag-name,User-ID:userId
- System property:
- Improve naming for
@Trace
generated spans on methods inside anonymous classes: now includes more class name. (#303) - Upgraded to Byte Buddy 1.8.8 (#293)
- Remove guava dependency for
dd-trace-ot
(#307)
New Instrumentation (disabled by default)
- Hystrix (#306)
- System property:
dd.integration.hystrix.enabled=true
- Environment variable:
DD_INTEGRATION_HYSTRIX_ENABLED=true
- System property:
Bugfixes
0.7.0
Improvements
- Add startTime and duration to MutableSpan interface #283
- Improve trace count accuracy #289
- Priority Sampling config for Javaagent users #288
New Instrumentation (disabled by default)
- Play 2.4 - 2.6 #277 #282
- System property:
-Ddd.integration.java_concurrent.enabled=true -Ddd.integration.play.enabled=true
- Environment variable:
DD_INTEGRATION_JAVA_CONCURRENT_ENABLED=true DD_INTEGRATION_PLAY_ENABLED=true
- System property:
- Support for Ratpack #276
- Shoutout to @jonmort for the third-party contribution!
- System property:
-Ddd.integration.ratpack.enabled=true
- Environment variable:
DD_INTEGRATION_RATPACK_ENABLED=true
- Support for Spark Java #254
- Shoutout to @JorgenG for the third-party contribution!
- System property:
-Ddd.integration.sparkjava.enabled=true -Ddd.integration.jetty.enabled=true
- Environment variable:
DD_INTEGRATION_SPARKJAVA_ENABLED=true DD_INTEGRATION_JETTY_ENABLED=true
Bugfixes
- Fix NoClassDefFoundError in jaxrs instrumentation #294
- Decrease log level for hot paths #291
- Correct units for start timestamp parameter name #286
- Instrument IBM-DB2 #281
- Fixed missing httpclient traces #296
For more details, check the full changeset and the release milestone.
0.6.0
Improvements
- Enabled the following instrumentation by default (#274)
- JAX-RS annotation based resource naming
- Jedis
- Kafka client
- Upgraded to Byte Buddy 1.8.1 (#271)
New Instrumentation (disabled by default)
- JAX-RS Clients (#265)
- System property:
dd.integration.jax-rs.enabled=true
- Environment variable:
DD_INTEGRATION_JAX_RS_ENABLED=true
- System property:
- Akka async actor propagation (#264)
- System Property:
dd.integration.java_concurrent.enabled=true
- Environment variable:
DD_INTEGRATION_JAVA_CONCURRENT_ENABLED=true
- System Property:
Bugfixes
0.5.0
Improvements
- Configure tags to add to every span #245
- New TraceInterceptor API to modify and examine traces before sending to trace-agent #253
New Instrumentation (disabled by default)
(Will be default enabled in a future release. For this release, enable with the below config)
- scala async propagation for Promises and Futures #255
- System Property:
dd.integration.java_concurrent.enabled=true
- Environment variable:
DD_INTEGRATION_JAVA_CONCURRENT_ENABLED=true
- System Property:
Bugfixes
- Set max stack size correctly for error trapping #256
- Fix NPE edge-case in httpclient #258
- Mark all spans with an http status code of 5xx as an error #261
- Check up the classloader hierarchy to locate resources #259
For more details, check the full changeset and the release milestone.
0.4.1
Bugfixes
For more details, check the full changeset and the release milestone.
0.4.0
Improvements
- Update javaagent bootstrap process to support enterprise application servers (#228)
New Instrumentation (disabled by default)
(Will be default enabled in a future release. For this release, enable with the below config)
- Jedis redis client (#212)
Bugfixes
- Update
DDApi
connection with Datadog Agent v4 endpoint (#240) - Use nanotime for additional clock resolution (#239)
For more details, check the full changeset and the release milestone.