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
- Make Netty 4.1 library public API self-contained (#15981)
- Remove previously deprecated methods (#15892, #15929, #15943, #15944, #15945)
🚫 Deprecations
- Deprecated
getDelegate(),request(),channel(),remoteAddress()in HTTP client request wrapper classes in favor ofgetRequest(),getChannel(),getRemoteAddress()for consistency (#15942) - Deprecated
NettyClientTelemetry.setChannelContext()in favor ofsetParentContext()(#16010) - Deprecated
new*methods in favor ofcreate*methods in Armeria and Jetty client instrumentation (e.g.,newDecorator()→createDecorator(),newHttpClient()→createHttpClient()) (#16009) - Deprecated
NettyServerTelemetry.createResponseHandler()andcreateCombinedHandler()overloads that expose internal classes (#16011) - Deprecated
RatpackServerTelemetry.getHandler(),getExecInterceptor(), andgetExecInitializer()in favor ofcreateHandler(),createExecInterceptor(), andcreateExecInitializer()(#16013) - Deprecated
setPeerService()in HTTP, gRPC, Dubbo, and Armeria instrumentation builders in favor ofaddAttributesExtractor()(#16059) - Deprecated
RpcAttributesGetter.getMethod()in favor ofgetRpcMethod()to support stable RPC semantic conventions (#16121) - Deprecated
PeerServiceResolver,PeerServiceAttributesExtractor, andHttpClientPeerServiceAttributesExtractorin favor of renamed classesServicePeerResolver,ServicePeerAttributesExtractor, andHttpClientServicePeerAttributesExtractor(#16071) - Deprecated
setStatementSanitizationEnabled()in favor ofsetQuerySanitizationEnabled()across database instrumentation builders (Cassandra, JDBC, Lettuce, Mongo, R2DBC) (#16133) - Deprecated individual runtime metric classes (
Classes,Cpu,GarbageCollector,MemoryPools,Threads) in favor ofRuntimeMetrics(#16064) - Deprecated
SqlStatementInfoin favor ofSqlQuery, andSqlStatementSanitizerin favor ofSqlQuerySanitizer(#16074)
🌟 New library instrumentation
- Servlet 5 (#16033)
📈 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