Skip to content

Releases: DataDog/dd-trace-java

0.2.3

13 Sep 20:37
Compare
Choose a tag to compare
0.2.3 Pre-release
Pre-release

Improved compatibility of dd-java-agent co-existing with dd-trace

Internal classes of dd-trace inside dd-java-agent are dynamically modified using shadow. This created a problem with previous versions when dd-trace also existed on the classpath separately. The classloader could find the same classname in multiple different jars, but with different classes. These internal versions of classes from dd-trace now have a different package name and should not cause this conflict.

Fixed NPE in Servlet Context Helpers

If JettyServletHelper or TomcatServletHelper were triggered more than once, or there happened to already be a filter registered with the name tracingFilter, the helper would throw a NullPointerException. This registration process is now properly handled by checking registration first and checking for null before continuing.

0.2.2

07 Sep 18:42
Compare
Choose a tag to compare
0.2.2 Pre-release
Pre-release

Fixed integration with custom classloaders

Internal classes used for the purpose of integrations are now loaded on the classloader where the integration is applied. This allows for support of applications running with non-standard classloaders such as Spring Boot's executable jar classloader.

Logging has been changed to use an internal SLF4J implementation that is scoped to just dd-java-agent. The result is agent logs are piped to STDERR. This fixes the lack of logging for executable Spring Boot jars. Configure the log level with the following property -Ddd.slf4j.simpleLogger.defaultLogLevel=debug.

0.2.1

25 Aug 21:56
Compare
Choose a tag to compare
0.2.1 Pre-release
Pre-release

Improved method for identifying integration support

This pre-release uses the presence of classes on the classpath or lack there of to determine if an appropriate version of a supported library is available and should be instrumented.

The servlet filter that is added to Tomcat and Jetty is now marked as async supported so as to not break existing async servlet endpoints.

It also replaces json serialization with msgpack for sending traces to the trace agent. This improves performance, especially for large traces.

Known Issues:

  • Because of the use of SLF4J, if using something like an executable jar that doesn't put things on the system classpath (spring boot), logging might be broken.

Latest v0

13 Sep 12:07
Compare
Choose a tag to compare

Download

This release tracks the latest v0 available, currently v0.115.1.

Latest

13 Sep 12:07
Compare
Choose a tag to compare

Download

This release tracks the latest version available, currently v1.44.1.

Latest v1

16 Nov 09:52
cba8ffe
Compare
Choose a tag to compare

Download

This release tracks the latest v1 available, currently v1.44.1.

0.2.0

07 Aug 14:53
Compare
Choose a tag to compare
0.2.0 Pre-release
Pre-release

First beta release is out!

This pre-release introduces all the bindings for the APM Java Tracer. Here the list of available functionalities:

  • the Java Tracer is OpenTracing compliant
  • the dd-trace package exposes a Tracer API to trace the code execution of your functions, using manual instrumentation and try-with-resources statements
  • the dd-trace-annotations package provides the @Trace annotation to trace entirely a function instead of adding manual instrumentation to the function body
  • the dd-java-agent package provides a Java Agent that can be used via -javaagent:<path_to_jar> to auto-instrument your application

Contrib modules from the OpenTracing community are used to instrument and auto-instrument the following libraries or frameworks:

Framework Versions
OkHTTP 3.x
Apache HTTP Client 4.3 +
AWS SDK 1.11.119+
Web Servlet Filters Depends on web server
JMS 2 2.x
Server Versions
Jetty 8.x, 9.x
Tomcat 8.0.x, 8.5.x & 9.x
Database Versions
Spring JDBC 4.x
Hibernate 5.x
MongoDB 3.x
Cassandra 3.2.x