github open-telemetry/opentelemetry-java-instrumentation v2.25.0
Version 2.25.0

6 hours ago

This release targets the OpenTelemetry SDK 1.59.0.

Note that many artifacts have the -alpha suffix attached to their version number, reflecting that they are still alpha quality and will continue to have breaking changes. Please see the VERSIONING.md for more details.

⚠️ Breaking changes to non-stable APIs

🚫 Deprecations

  • Deprecated getDelegate(), request(), channel(), remoteAddress() in HTTP client request wrapper classes in favor of getRequest(), getChannel(), getRemoteAddress() for consistency (#15942)
  • Deprecated NettyClientTelemetry.setChannelContext() in favor of setParentContext() (#16010)
  • Deprecated new* methods in favor of create* methods in Armeria and Jetty client instrumentation (e.g., newDecorator()createDecorator(), newHttpClient()createHttpClient()) (#16009)
  • Deprecated NettyServerTelemetry.createResponseHandler() and createCombinedHandler() overloads that expose internal classes (#16011)
  • Deprecated RatpackServerTelemetry.getHandler(), getExecInterceptor(), and getExecInitializer() in favor of createHandler(), createExecInterceptor(), and createExecInitializer() (#16013)
  • Deprecated setPeerService() in HTTP, gRPC, Dubbo, and Armeria instrumentation builders in favor of addAttributesExtractor() (#16059)
  • Deprecated RpcAttributesGetter.getMethod() in favor of getRpcMethod() to support stable RPC semantic conventions (#16121)
  • Deprecated PeerServiceResolver, PeerServiceAttributesExtractor, and HttpClientPeerServiceAttributesExtractor in favor of renamed classes ServicePeerResolver, ServicePeerAttributesExtractor, and HttpClientServicePeerAttributesExtractor (#16071)
  • Deprecated setStatementSanitizationEnabled() in favor of setQuerySanitizationEnabled() across database instrumentation builders (Cassandra, JDBC, Lettuce, Mongo, R2DBC) (#16133)
  • Deprecated individual runtime metric classes (Classes, Cpu, GarbageCollector, MemoryPools, Threads) in favor of RuntimeMetrics (#16064)
  • Deprecated SqlStatementInfo in favor of SqlQuery, and SqlStatementSanitizer in favor of SqlQuerySanitizer (#16074)

🌟 New library instrumentation

📈 Enhancements

  • Logback appender: add declarative config support (#15813)
  • OkHttp: avoid weak reference in library instrumentation (#15977)
  • HTTP clients: Enable query redaction by default in library instrumentations (#16096)
  • HttpURLConnection: mark as early instrumentation to ensure virtual fields are used (#16142)

🛠️ Bug fixes

  • Dropwizard metrics: Sanitize names where needed to comply with OpenTelemetry requirements (#15954)
  • Instrumentation API incubator: Fix span key mapping for MESSAGING_CONSUMER_PROCESS (#16001)
  • Couchbase: Fix local address occasionally missing (#16035)
  • Internal logging: Map jul config level to debug instead of info (#16141)

🙇 Thank you

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

@imavroukakis
@jackshirazi
@jaydeluca
@jkwatson
@laurit
@pepeshore
@psx95
@roberttoyonaga
@robsunday
@steverao
@surbhiia
@SylvainJuge
@thiagohora
@toon-borgers-hs
@trask
@zeitlinger

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

NewReleases is sending notifications on new releases.