|
2 | 2 |
|
3 | 3 | ## Unreleased |
4 | 4 |
|
| 5 | +### ⚠️ Breaking changes to non-stable APIs |
| 6 | + |
| 7 | +- Make Netty 4.1 library public API self-contained |
| 8 | + ([#15981](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15981)) |
| 9 | +- Remove previously deprecated methods |
| 10 | + ([#15892](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15892), |
| 11 | + [#15929](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15929), |
| 12 | + [#15943](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15943), |
| 13 | + [#15944](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15944), |
| 14 | + [#15945](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15945)) |
| 15 | + |
| 16 | +### 🚫 Deprecations |
| 17 | + |
| 18 | +- Deprecated `getDelegate()`, `request()`, `channel()`, `remoteAddress()` in HTTP client request |
| 19 | + wrapper classes in favor of `getRequest()`, `getChannel()`, `getRemoteAddress()` for consistency |
| 20 | + ([#15942](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15942)) |
| 21 | +- Deprecated `NettyClientTelemetry.setChannelContext()` in favor of `setParentContext()` |
| 22 | + ([#16010](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16010)) |
| 23 | +- Deprecated `new*` methods in favor of `create*` methods in Armeria and Jetty client |
| 24 | + instrumentation (e.g., `newDecorator()` → `createDecorator()`, |
| 25 | + `newHttpClient()` → `createHttpClient()`) |
| 26 | + ([#16009](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16009)) |
| 27 | +- Deprecated `NettyServerTelemetry.createResponseHandler()` and `createCombinedHandler()` overloads |
| 28 | + that expose internal classes |
| 29 | + ([#16011](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16011)) |
| 30 | +- Deprecated `RatpackServerTelemetry.getHandler()`, `getExecInterceptor()`, and |
| 31 | + `getExecInitializer()` in favor of `createHandler()`, `createExecInterceptor()`, and |
| 32 | + `createExecInitializer()` |
| 33 | + ([#16013](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16013)) |
| 34 | +- Deprecated `setPeerService()` in HTTP, gRPC, Dubbo, and Armeria instrumentation builders in favor |
| 35 | + of `addAttributesExtractor()` |
| 36 | + ([#16059](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16059)) |
| 37 | +- Deprecated `RpcAttributesGetter.getMethod()` in favor of `getRpcMethod()` to support stable RPC |
| 38 | + semantic conventions |
| 39 | + ([#16121](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16121)) |
| 40 | +- Deprecated `PeerServiceResolver`, `PeerServiceAttributesExtractor`, and |
| 41 | + `HttpClientPeerServiceAttributesExtractor` in favor of renamed classes `ServicePeerResolver`, |
| 42 | + `ServicePeerAttributesExtractor`, and `HttpClientServicePeerAttributesExtractor` |
| 43 | + ([#16071](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16071)) |
| 44 | +- Deprecated `setStatementSanitizationEnabled()` in favor of `setQuerySanitizationEnabled()` across |
| 45 | + database instrumentation builders (Cassandra, JDBC, Lettuce, Mongo, R2DBC) |
| 46 | + ([#16133](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16133)) |
| 47 | +- Deprecated individual runtime metric classes (`Classes`, `Cpu`, `GarbageCollector`, |
| 48 | + `MemoryPools`, `Threads`) in favor of `RuntimeMetrics` |
| 49 | + ([#16064](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16064)) |
| 50 | +- Deprecated `SqlStatementInfo` in favor of `SqlQuery`, and `SqlStatementSanitizer` in favor of |
| 51 | + `SqlQuerySanitizer` |
| 52 | + ([#16074](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16074)) |
| 53 | + |
| 54 | +### 🌟 New library instrumentation |
| 55 | + |
| 56 | +- Servlet 5 |
| 57 | + ([#16033](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16033)) |
| 58 | + |
| 59 | +### 📈 Enhancements |
| 60 | + |
| 61 | +- Logback appender: add declarative config support |
| 62 | + ([#15813](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15813)) |
| 63 | +- OkHttp: avoid weak reference in library instrumentation |
| 64 | + ([#15977](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15977)) |
| 65 | +- HTTP clients: Enable query redaction by default in library instrumentations |
| 66 | + ([#16096](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16096)) |
| 67 | +- HttpURLConnection: mark as early instrumentation to ensure virtual fields are used |
| 68 | + ([#16142](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16142)) |
| 69 | + |
| 70 | +### 🛠️ Bug fixes |
| 71 | + |
| 72 | +- Dropwizard metrics: Sanitize names where needed to comply with OpenTelemetry requirements |
| 73 | + ([#15954](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/15954)) |
| 74 | +- Instrumentation API incubator: Fix span key mapping for MESSAGING_CONSUMER_PROCESS |
| 75 | + ([#16001](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16001)) |
| 76 | +- Couchbase: Fix local address occasionally missing |
| 77 | + ([#16035](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16035)) |
| 78 | +- Internal logging: Map jul config level to debug instead of info |
| 79 | + ([#16141](https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/16141)) |
| 80 | + |
5 | 81 | ## Version 2.24.0 (2026-01-17) |
6 | 82 |
|
7 | 83 | ### ⚠️ Breaking Changes |
|
0 commit comments