Releases: DataDog/dd-trace-java
Releases · DataDog/dd-trace-java
0.19.0
Enhancements
- Support for Vert.x-web+rxjava: #564
Fixes
- Stop wrapping runnables in executor instrumentation implementation: #564
- Reflection error message is no longer printed in java 9+:
WARNING: An illegal reflective access operation has occurred
- Reflection error message is no longer printed in java 9+:
- Prevent Rabbitmq instrumentation from eating exceptions: #604
- Additional Rabbitmq error guarding: #607
- Remove benign debug-level message "QueueFullException" logged from ThreadPoolExecutorInstrumentation: #600
- Improve netty concurrency edge-cases: #587
0.18.0
-
Enhancements
- Add error-reporting for Kotlin GRPC #555
- Thanks to @marcoferrer for the contribution!
- Add support for DD_TRACE_AGENT_PORT setting #584
- Improve component tag reporting #578
- Log Java and JVM version info. #565
- Add error-reporting for Kotlin GRPC #555
-
Fixes
- Reintroduce DDTracer constructor removed in 0.17.0 #579
- Report correct throughput for tracers with high throughput. #571
- Fix bug for servlets using async dispatch #582
- Note: Said bug sometimes caused performance issues for servlet users.
- Fix bug where Mssql traces would not report. Also improve debug logging around JDBC errors. #559 #557
0.17.0
Instrumentation
- New Instrumentation:
- Existing instrumentation now enabled by default:
Improvements
- Official support for Java 11 #480
- Include JMXFetch collection in dd-java-agent #505 #543
- This allows metrics to automatically be collected and reported without the need to expose JMX to the datadog agent.
- Disabled by default. Use the following system property to enable:
-Ddd.jmxfetch.enabled=true
- Upgraded Byte Buddy to 1.9.2 #540
- Allow instrumenting Sun JMS clients #520
- Extend support for Apache HTTP Client to 4.0+ #521
- Reduce extra spans
- Support non-builder style usage
- Added tests for Vert.x #536
Bug Fixes
0.16.0
0.15.0
New Integrations (enabled by default)
Enabled Integrations
Improvements
- Stop tagging AWS request param data due to sensitive nature (#478)
- Limit size of Byte Buddy's type cache and evict unused (#468)
- Make JMS instrumentation more resilient to failure if message properties are read-only (#473)
- Fixed gap in Elasticsearch client 5.3-6.0 coverage (#494)
- Various improvements for integration compatibility checks
0.14.0
Improvements
- Officially Support Java 10. #414
- Note: A warning of
An illegal reflective access operation
may print on startup. This will not affect runtime behavior. - A long-term fix is in progress to remove this warning.
- Note: A warning of
- Enable async tracking for gRPC server calls #457
- Don't report traces with unfinished spans #459
- Prevents reporting traces created by buggy uses of the OpenTracing API
- Throughput count will still be preserved
- New Datadog APIs
0.13.0
Important
- Fixes a potential memory leak when spans are created and not finished (since
0.5.0
) #423
Improvements
- Netty 4.0+ instrumentation enabled by default #455, #456
- Apache HttpClient instrumentation has better error handling #417
- HttpUrlConnection instrumentation now separates connect, input, and output #425
- Spring Web and Jax-RS now have a separate span for the controller execution #430, #435
- Also includes a span for rendering responses
- Replaced use of synchronized WeakMap's with
WeakConcurrentMap
#428 - Added runtime reference checks to ensure instrumentation is safe to apply #422, #427, #441, #447,
Bug Fixes
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