Releases: DataDog/dd-trace-java
Releases · DataDog/dd-trace-java
0.51.0
Deprecations
- [dd-trace-api] Deprecate scope finishOnClose and continuation close #1424
- Close spans manually instead of relying on
finishOnClose - Use
Continuation.cancel()instead ofContinuation.close()
- Close spans manually instead of relying on
Improvements
- [Performance] Avoid allocation of byte[] in MessagePacker.writeString #1435
- [Performance] Intern UTF8 encoding of well known constants to reduce allocation#1430
- [Performance] Replace collection.size() > 0 with not collection.isEmpty() #1420
- [Performance] Avoid allocating an array when getting first header value #1418
- Add instrumentation for OkHttp 2.2+ #1402 (Thanks @jerchung for the contribution)
- Reduce
finalize()logging in tracer #1416 - Change logging for ScopeEventFactory creation exception #1417
Changes
- OpenTracing Split #1354, #1439, #1429
- Note: Some unchecked casting will no longer be possible
- Spans passed into
TraceInterceptorwill no longer be castable toio.opentracing.Spanordatadog.opentracing.DDSpan - Spans returned from OpenTracing interfaces will no longer be castable to
datadog.opentracing.DDSpan
- Spans passed into
- Note: Some unchecked casting will no longer be possible
- Do not stop profiling on fatal exceptions #1421
- Upgrade jmxfetch to 0.36.1 and integrations-core modules to 7.19.0 #1410
- Upgrade Byte Buddy to 1.10.10 #1409
Fixes
0.50.0
Improvements
- New instrumentation for Rediscala library #1389 (Thanks @aliyakamercan for the contribution)
- Extend Lettuce instrumentation support to 4.0-5.x sync/async APIs #1398
- Extend Ratpack instrumentation to 1.8 #1404
- Applications using Ratpack 1.4.x and Guava 19 will no longer be instrumented. A minimum of Guava 20 is now required.
Changes
- Add exception sampling event for profiling #1297
- Resolve conflicts across new
DD_VERSION,DD_ENVandDD_TAGSvariables #1393
Bug Fixes
- Rework servlet 2 to not wrap HttpServletResponse objects #1387
- Handle
AbstractMethodErrorin JDBC instrumentation ifgetClientInfonot implemented #1385 - Http Trace and Span ID should use StringCachingBigInteger #1397 (Thanks @aarya123 for the contribution)
- Check jax-rs AsyncResponse for span before starting new one #1403
0.49.0
0.48.0
Improvements
- Increased Play support to Play 2.3+ #1325
- Add
DD_SITE(anddd.site) configuration option to support sending profiles to different datadog sites (e.g. EU) #1348 DD_SERVICE;DD_ENV;DD_VERSIONconfig options #1341
Changes
- Rename
DD_PROFILING_APIKEYtoDD_API_KEYto allow generic use by other parts of the tracer in the future #1355
Fixes
- Make sure that netty exception message is not null #1337
- Remove sensitive information from debug log #1349
IndexOutOfBoundsExceptionwith single comma value #1356
See Milestone for full details.
0.47.0
0.46.0
Improvements
- Add commons-httpclient instrumentation #1299
- Capture stacktrace for long running spans #1160
- this was removed in 0.47.0.
- Avoid jar file collisions with bootstrap injection #1285
- Inject
traceIdandspanIdinto servlet request attributes #1304 - [Performance] Ignore popular library classes that are never instrumented #1293. #1303, #1305, #1312
- [Performance] Move common helper classes to bootstrap #1311
- [Performance] Additional ClassLoader matcher improvements #1298
Changes
- Stop creating a "top level" servlet span when in a forward/include situation #1300
Fixes
0.45.0
Improvements
- Add setting
dd.tags/DD_TAGSto apply tags for traces, metrics, and profiles #1263 - Update jmxfetch to
0.35.0for various improvements #1281 - Improve application startup time by
Regression
- Fix regression for applications with non-delegating class loaders introduced in
0.44.0#1275
Changes
- Use guava cache instead of WeakHashMap to reduce thread contention #1244
- Add
LogHandlerto provide alternate handling forspan.logcalls #1225 - Add support for lz4 compression in profiles and make it default #1216
- Reduce uri reparsing #1268
- Allow
@Tracegenerated spans be reported to App Analytics- System Property:
-Ddd.trace-annotation.analytics.enabled=true - Environment Variable:
DD_TRACE_ANNOTATION_ANALYTICS_ENABLED=true
or - System Property:
-Ddd.trace-config.analytics.enabled=true - Environment Variable:
DD_TRACE_CONFIG_ANALYTICS_ENABLED=true
- System Property:
Deprecation
dd.tagsshould now be used instead ofdd.trace.global.tagsandDD_TAGSinstead ofDD_TRACE_GLOBAL_TAGS
For more details see the release milestone
0.44.0
Known Issues
- This release broke classloader delegation config for OSGi based systems (Wildfly, JBoss, etc) (Fixed in #1275/
0.45.0)
Improvements
- Add instrumentation for Spring Scheduling #1192
- Add support for Datadog Profiling #1211
- Memory overhead reduction #1226, #1228
- Startup overhead reduction #1231, #1232, #1233, #1235, #1237, #1240, #1245, #1246, #1247, #1248
Changes
- Move service name mappings processing to
DDSpanContext#1217 - Disable peer hostname tag for http servers #1224
- Use more generic instrumentation for classloaders (Tomcat, JBoss, OSGi) #1218 (thanks @trask)
- Change
DDTracerto return OpenTracing interfaces instead of DD* implementations #1219 - Determine agent URL lazily #1236
Fixes
0.43.0
Improvements
- Deduplicate class loads, reducing jar size and memory overhead #1199
- Reduce memory overhead by combining a few threads #1200
- Reduce instrumentation class sizes by removing extraneous validation code #1208
- This adds support for the Finatra web framework 2.9+ #1188
Changes
- Remove Jackson dependency in tracing (still used by jmxfetch) #1185
- Upgrade OkHttp client to 3.12.8 #1201
- Reduce ContextClassloader usage #1204
- New trace processing pipeline #1161
- Adds metric to trace to allow agent to scale counts if sampling occurs
Fixes
0.42.0
Improvements
- Allow limiting the depth of a traces scope tree #1177
- Adjust class caching strategy to reduce start-up impact and add bounds for size #1189
- Made decorator properties accept lowercase names #1182
- Reduce memory overhead of loading internal classes and jars #1179
- Add builder on
DDTracerclass #1174
Changes
- Updating bytebuddy to 1.10.6 #1175
- Changed rules based sampling properties to follow common Datadog convention #1181
Fixes
- Chained servlets by way of
forwardandincludewill not create multiple top level spans #1196 (Fixed #1195) - Fixes potential stack overflow in method tracing property processing #1193 (Thanks to @Blikingor for the contribution)
- In some cases we were causing a
NullPointerExceptionin hiberate instrumentation #1190