Releases: DataDog/dd-trace-java
Releases · DataDog/dd-trace-java
0.28.0
Added
- Allow tracing to be entirely disabled with env variable or system property #824
- System Property:
dd.trace.enabled=false
- Environment Variable:
DD_TRACE_ENABLED=false
- System Property:
- Add configuration option to enable individual executors #830
dd.trace.executors=com.MyCustomExecutor,com.OtherExecutor
dd.trace.executors.all=true
- Environment Variables:
DD_TRACE_EXECUTORS
,DD_TRACE_EXECUTORS_ALL
- Add configuration to report hostname on tracer root span #827
- System Property:
dd.trace.report-hostname=true
- Environment Variable:
DD_TRACE_REPORT_HOSTNAME=true
- System Property:
Fixed
- Resource name for Ratpack integration #833
See all other associated changes the in the release milestone
0.27.0
Added
- Apache HttpAsyncClient instrumentation #809
- Twilio SDK Instrumentation #775 - Thanks @darylrobbins
- Update Ratpack instrumentation and enable it by default #797
- Hystrix instrumentation extended to include tracing for HystrixObservableCommand #811
- Set default value for
dd.trace.partial.flush.min.spans
to 1k spans #804 - Possibility to exclude classes from transformation based on config parameter #807
Fixed
- Have Cassandra integration work with recent versions of Guava #786
- Improve compatibility when instrumenting cglib generated proxy classes #795
- Automatically apply OSGi bootloader delegation settings for felix and other frameworks #803
- Only add frames if class file version supports attribute #814 - Thanks @raphw
- Fix log message when a error occurs during trace flushing #784 - Thanks @msysyamamoto
Changed
- Upgrade Byte Buddy to 1.9.12 -- Improves compatibility with Java 12 applications #812
- Log JMXFetch tracing info at info level instead of error level #796
- Replace hostname/port pair with peer name in server tags #798
- Rebrand priority sampling to manual keep/drop #805
- Make context fields transitive to avoid unintentional serialization #816
0.26.2
0.26.1
WARNING:
This release has a bug calculating the content length for tracer payloads with more than 15 traces (per second). This miscalculation causes the agent to drop the payload. This is fixed in 0.26.2
.
Bugs
- Fix regression introduced in version
0.26.0
where it was impossible to instantiateHttpsURLConnectionImpl
due to missing classes. #781 - Fix config key for http status error mapping. The following config should now work properly. #782
- System Property:
dd.http.client.error.statuses=400-499
dd.http.server.error.statuses=500-599
- Environment Variable:
DD_HTTP_CLIENT_ERROR_STATUSES=400-499
DD_HTTP_SERVER_ERROR_STATUSES=500-599
- System Property:
0.26.0
WARNING:
This release has a bug calculating the content length for tracer payloads with more than 15 traces (per second). This miscalculation causes the agent to drop the payload. This is fixed in 0.26.2
.
Improvements
- Flush traces to the agent when size exceeds 5MB. Use LMAX Disruptor for collecting/serializing traces. #710
- Better performance for high throughput applications.
- Allows more traces to be sent to the agent without exceeding the limit.
- Support for B3 formatted header injection/extraction #756
- System Property:
dd.propagation.style.inject=Datadog,B3
dd.propagation.style.extract=Datadog,B3
- Environment Variable:
DD_PROPAGATION_STYLE_INJECT=Datadog,B3
DD_PROPAGATION_STYLE_EXTRACT=Datadog,B3
- Note: extract configuration is order specific.
- Thanks @adriancole for the review.
- System Property:
- New config defining HTTP status code ranges to be marked as errors with the following defaults #772
- This release had a typo in the config key, but is fixed in
0.26.1
- System Property:
dd.http.client.error.statuses=400-499
dd.http.server.error.statuses=500-599
- Environment Variable:
DD_HTTP_CLIENT_ERROR_STATUSES=400-499
DD_HTTP_SERVER_ERROR_STATUSES=500-599
- This release had a typo in the config key, but is fixed in
- Allow traces to be proxied via Unix Domain Sockets #760
- Added instrumentation for Hibernate's
ProcedureCall
#765 - Extended support for hibernate to 3.3 #773
Bugs
0.25.0
Known Issues
- New hibernate instrumentation has problems and is currently being worked on. Disable using the following setting:
- System property:
dd.integration.hibernate.enabled=false
- Environment variable:
DD_INTEGRATION_HIBERNATE_ENABLED=false
- System property:
Improvements
- New Instrumentation for Hibernate core 4.0+ #703
- Added support to submit jmxfetch metrics via UDS #752
- Added support for fine-grained configuration of Trace Search and Analytics.
Enable for all HTTP server frameworks:
System Property:-Ddd.trace.analytics.enabled=true
Environment Variable:DD_TRACE_ANALYTICS_ENABLED=true
Bug Fixes
0.24.1
0.24.0
0.23.0
Improvements
- Added setting to
split-by-domain
for HTTP clients. #691- Sets the service name for client calls to the hostname in the url being called.
- Off by default. Works best with few distinct hosts. To enable:
- System property:
-Ddd.trace.http.client.split-by-domain=true
- Environment variable:
DD_TRACE_HTTP_CLIENT_SPLIT_BY_DOMAIN=true
- System property:
- Bundle JMX integrations from integrations-core #639 #696
- These can be enabled via config:
- System property:
-Ddd.integration.<name>.enabled=true
- Environment variable:
DD_INTEGRATION_<NAME>_ENABLED=true
- <Name> is the name of the folder under
integrations-core
- System property:
- These can be enabled via config:
- Better handling of JMXFetch initialization delay when using custom loggers #684 #686
- Added instrumentation for maintaining trace context in ForkJoin tasks and ScheduledThreadpoolExecutor #666 #672 #701
- Added instrumentation for
aws-sdk
v2 (enabled by default) #666 - More reliable Netty instrumentation #676
- More reliable Webflux instrumentation #688
- Extend instrumentation support for Elasticsearch rest client to 6.3+ #679
Fixes
0.22.0
Improvements
- Updated minimum Jackson dependency to 2.9.8 for security vulnerability remediation #658
- This should be transparent if you're using
dd-java-agent
, but might cause dependency conflicts if usingdd-trace-ot
.
- This should be transparent if you're using
- Support Kotlin coroutine context propagation (Thanks @markoferrer) #653
- Add config to partially flush spans from large traces #662
- Add the following config to set the threshold for large traces:
- System property:
-Ddd.trace.partial.flush.min.spans=100
- Environment Variable:
DD_TRACE_PARTIAL_FLUSH_MIN_SPANS=100
- System property:
- Add the following config to set the threshold for large traces:
- Customize trace event sample rate per service by setting a tag #640
Fixes
- Prevent jmx metric capture from prematurely initializing custom
LogManager
s until after it's been successfully initialized #657