github open-telemetry/opentelemetry-java-instrumentation v0.8.0
Version 0.8.0

latest releases: v1.33.2, v2.3.0, v1.33.1...
3 years ago

This update is compatible with the OpenTelemetry Java SDK 0.8.0

🌟 New instrumentation

While not new instrumentation, we've also added documentation for our Spring instrumentation - give it a try and let us know how we can improve it! #1035 #1110

📈 Improvements

  • Significant work consolidating tracing code to use Tracer abstraction instead of Decorator #893 #918 #922 #1148
  • Thread information is logged into span attributes #1093
  • More coverage of messaging attributes for JMS #963 #1179
  • Jedis now has net.peer mapped correctly #1158
  • Removed redundant instrumentation of UrlConnection #1059
  • Metric exporter is now enabled by default #1098
  • Version of the Java agent is now populated in Resource #1112
  • Many optimizations to our framework / various instrumentations #1107

🛠️ Bug fixes

  • WithSpan works again after fixing compatibility with the SDK #929
  • ClassCastException not thrown when accessing TracerSDK directly #931
  • OpenTracing shim correctly propagates headers (baggage is still not supported) #947 #974
  • ClassCastException not thrown on recent Jetty versions #1156
  • null can be set by instrumentations using InstrumentationContext even when the context is backed by a map #1177
  • Kotlin coroutines have context propagated correctly #1168
  • Spring Web MVC spans have correct name even if there is an authentication failure #1122
  • Servlet 3.1+ containers do not throw exceptions #1167

☢️ Breaking changes

  • io.opentelemetry:opentelemetry-sdk-extension-auto-config used by exporter modules has been replaced by io.opentelemetry.instrumentation.auto:opentelemetry-javaagent-tooling. If you maintain a custom exporter, please migrate to this new module to continue to be recognized by the agent.
    • We will probably be renaming this module again in the next version, sorry for the churn!
  • Java agent binary and modules are now published at io.opentelemetry.instrumentation.auto:opentelemetry-javaagent/opentelemetry-javaagent-bootstrap/opentelemetry-javaagent-tooling
  • io.opentelemetry.auto package moved to io.opentelemetry.javaagent. This affects any command line parameters too

⛓ Tooling

  • Reworked tests against latest dependencies of libraries to be flagged by a property, reducing load during local development #977
  • Added Gradle remote caching to improve build times on GitHub actions and locally #982
  • Smoke tests reworked to run well on both CI and locally #934
  • Migrated test runner to JUnit5 from JUnit4 #770
  • You should now see far fewer flaky builds as we have automatic retry of all tests due to the flaky nature of some of the libraries we use #908

🙇 Thank you

This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:

Don't miss a new opentelemetry-java-instrumentation release

NewReleases is sending notifications on new releases.