22
33## Unreleased
44
5+ ### Migration notes
6+
7+ In preparation for stabilizing HTTP library instrumentation soon:
8+
9+ - ` addAttributeExtractor ` methods in a few ` *TelemetryBuilder ` classes have been deprecated
10+ and renamed to ` addAttributesExtractor ` (which is how most of them were named already)
11+ ([ #12860 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12860 ) )
12+ - ` setEmitExperimental* ` methods in ` *TelemetryBuilder ` classes have been deprecated and moved
13+ to internal/experimental classes, see Javadoc ` @deprecated ` for exact relocation
14+ ([ #12847 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12847 ) )
15+ - ` ApacheHttpClient5* ` classes have been deprecated and renamed to ` ApacheHttpClient* `
16+ ([ #12854 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12854 ) )
17+ - ` RatpackTelemetry* ` classes have been deprecated and split into ` RatpackClientTelemetry* `
18+ and ` RatpackServerTelemetry* `
19+ ([ #12853 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12853 ) )
20+ - ` SpringWebfluxTelemetry* ` classes have been deprecated and split into
21+ ` SpringWebfluxClientTelemetry* ` and ` SpringWebfluxServerTelemetry* `
22+ ([ #12852 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12852 ) )
23+ - ` ArmeriaTelemetry* ` classes have been deprecated and split into ` ArmeriaClientTelemetry* `
24+ and ` ArmeriaServerTelemetry* `
25+ ([ #12851 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12851 ) )
26+ - ` *KtorClientTracing* ` and ` *KtorServerTracing* ` have been deprecated and renamed to
27+ ` *KtorClientTelemetry* ` and ` *KtorServerTelemetry* `
28+ ([ #12855 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12855 ) )
29+
530## Version 2.10.0 (2024-11-13)
631
732### 🌟 New javaagent instrumentation
5378 ([ #12511 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12511 ) )
5479- Fix lettuce instrumentation and tests to pass against latest version
5580 ([ #12552 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12552 ) )
56- - Fix Kafka initialization occasionally failed due to concurrent injection of OpenTelemetryMetricsReporter
81+ - Fix Kafka initialization occasionally failed due to concurrent injection of
82+ OpenTelemetryMetricsReporter
5783 ([ #12583 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12583 ) )
5884
5985## Version 2.9.0 (2024-10-17)
87113 ([ #12265 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12265 ) )
88114- Spring Boot Starter: Add auto configuration for spring scheduling instrumentation
89115 ([ #12438 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12438 ) )
90- - Extract ` APIGatewayProxyRequestEvent ` headers for context propagation in AWS Lambda instrumentation
116+ - Extract ` APIGatewayProxyRequestEvent ` headers for context propagation in AWS Lambda
117+ instrumentation
91118 ([ #12440 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12440 ) )
92119- Support JMX state metrics
93120 ([ #12369 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12369 ) )
122149 If you are using the Java agent, this only affects you if you are opting in via
123150 ` otel.instrumentation.runtime-telemetry-java17.enable-all=true ` .
124151 ([ #12084 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12084 ) ,
125- [ #12244 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12244 ) )
152+ [ #12244 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12244 ) )
126153
127154### 📈 Enhancements
128155
155182 ([ #12121 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12121 ) )
156183- Fix error span status for successful requests in Ktor
157184 ([ #12161 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12161 ) )
158- - Make OpenTelemetryHandlerMappingFilter handle exceptions from ` ServletRequestPathUtils.parseAndCache() `
185+ - Make OpenTelemetryHandlerMappingFilter handle exceptions from
186+ ` ServletRequestPathUtils.parseAndCache() `
159187 ([ #12221 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12221 ) )
160188- Fix tracing CoroutineCrudRepository.findById
161189 ([ #12131 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12131 ) )
181209 ([ #11926 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11926 ) )
182210- Ignore Alibaba fastjson ASMClassLoader
183211 ([ #11954 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11954 ) )
184- - Use ` aws-lambda-java-serialization ` library, which is available by default, while deserializing input and serializing output
212+ - Use ` aws-lambda-java-serialization ` library, which is available by default, while deserializing
213+ input and serializing output
185214 ([ #11868 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11868 ) )
186215- Logback appender: map timestamp in nanoseconds if possible
187216 ([ #11974 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11974 ) )
@@ -444,7 +473,8 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
444473 ([ #10887 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10887 ) )
445474- Fix spring kafka interceptor wrappers not delegating some methods
446475 ([ #10935 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10935 ) )
447- - AWS Lambda Runtime legacy internal handlers need to be ignored from being instrumented and so traced …
476+ - AWS Lambda Runtime legacy internal handlers need to be ignored from being instrumented and so
477+ traced …
448478 ([ #10942 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10942 ) )
449479- Metro: ignore UnsupportedOperationException when updating span name
450480 ([ #10996 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10996 ) )
@@ -571,14 +601,15 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
571601 ` otel.instrumentation.http.client.emit-experimental-telemetry `
572602 - ` otel.instrumentation.http.server.emit-experimental-metrics ` ->
573603 ` otel.instrumentation.http.server.emit-experimental-telemetry `
574- ([ #10349 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10349 ) )
604+ ([ #10349 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10349 ) )
575605- The deprecated Jaeger exporter has been removed
576606 ([ #10241 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10241 ) )
577607- Actuator instrumentation has been disabled by default.
578608 You can enable using ` OTEL_INSTRUMENTATION_SPRING_BOOT_ACTUATOR_AUTOCONFIGURE_ENABLED=true `
579609 or ` -Dotel.instrumentation.spring-boot-actuator-autoconfigure.enabled=true ` .
580610 ([ #10394 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10394 ) )
581- - Spring starter: removed support for the deprecated @io .opentelemetry.extension.annotations.WithSpan
611+ - Spring starter: removed support for the deprecated
612+ @io .opentelemetry.extension.annotations.WithSpan
582613 annotation. Use @io .opentelemetry.instrumentation.annotations.WithSpan annotation instead.
583614 ([ #10530 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10530 ) )
584615
@@ -681,7 +712,7 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
681712
682713- Backport: update jackson packages to v2.16.1
683714 ([ #10198 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10198 ) ,
684- [ #10199 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10199 ) )
715+ [ #10199 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10199 ) )
685716- Backport: implement forEach support for aws sqs tracing list
686717 ([ #10195 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10195 ) )
687718- Backport: Bridge metric advice in OpenTelemetry API 1.32
@@ -695,7 +726,8 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
695726 ([ #10204 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10204 ) )
696727- Backport: Null check for nullable response object in aws sdk 1.1 instrumentation
697728 ([ #10029 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10029 ) )
698- - Backport: Make Netty Instrumentation HttpServerRequestTracingHandler propagate "Channel Inactive" event to downstream according to parent contract
729+ - Backport: Make Netty Instrumentation HttpServerRequestTracingHandler propagate "Channel Inactive"
730+ event to downstream according to parent contract
699731 ([ #10303 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10303 ) )
700732- Backport: Fix Netty addListener instrumentation
701733 ([ #10254 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10254 ) )
@@ -755,8 +787,10 @@ too disruptive to adopt right away.
755787 - ` process.runtime.jvm.classes.current_loaded ` renamed to ` jvm.classes.count `
756788 - CPU metrics
757789 - ` process.runtime.jvm.cpu.utilization ` renamed to ` jvm.cpu.recent_utilization `
758- - ` process.runtime.jvm.system.cpu.load_1m ` renamed to ` jvm.system.cpu.load_1m ` (still experimental)
759- - ` process.runtime.jvm.system.cpu.utilization ` renamed to ` jvm.system.cpu.utilization ` (still experimental)
790+ - ` process.runtime.jvm.system.cpu.load_1m ` renamed to ` jvm.system.cpu.load_1m ` (still
791+ experimental)
792+ - ` process.runtime.jvm.system.cpu.utilization ` renamed to ` jvm.system.cpu.utilization ` (still
793+ experimental)
760794 - Buffer metrics
761795 - ` process.runtime.jvm.buffer.limit ` renamed to ` jvm.buffer.memory.limit ` (still experimental)
762796 - ` process.runtime.jvm.buffer.count ` renamed to ` jvm.buffer.count ` (still experimental)
@@ -857,7 +891,8 @@ too disruptive to adopt right away.
857891 ([ #9698 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9698 ) )
858892- Generate only consumer span for sqs receive message
859893 ([ #9652 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9652 ) )
860- - Replace ` (client|server).socket.(address|port) ` attributes with ` network.(peer|local).(address|port) `
894+ - Replace ` (client|server).socket.(address|port) ` attributes with
895+ ` network.(peer|local).(address|port) `
861896 (when opting in to new semconv)
862897 ([ #9676 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9676 ) )
863898- Add capability for invokedynamic InstrumentationModules to inject proxies
@@ -885,7 +920,7 @@ too disruptive to adopt right away.
885920 ([ #9774 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9774 ) )
886921- Move capturing enduser.id attribute behind a flag
887922 ([ #9751 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9751 ) ,
888- [ #9788 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9788 ) )
923+ [ #9788 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9788 ) )
889924- Remove conditional requirement on ` network.peer.address ` and ` network.peer.port `
890925 (when opting in to new semconv)
891926 ([ #9775 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9775 ) )
@@ -895,7 +930,8 @@ too disruptive to adopt right away.
895930- Make ` url.scheme ` opt in for HTTP client metrics and make ` server.port ` required
896931 (when opting in to new semconv)
897932 ([ #9784 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9784 ) )
898- - Change ` http.request.body.size ` and ` http.response.body.size ` attributes from recommended to opt-in
933+ - Change ` http.request.body.size ` and ` http.response.body.size ` attributes from recommended to
934+ opt-in
899935 (when opting in to new semconv)
900936 ([ #9799 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9799 ) )
901937- Capture ` http.route ` in spring-cloud-gateway
@@ -1049,11 +1085,11 @@ too disruptive to adopt right away.
10491085 ([ #9335 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9335 ) )
10501086- More support for upcoming semantic convention changes
10511087 ([ #9346 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9346 )
1052- [ #9345 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9345 ) ,
1053- [ #9320 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9320 ) ,
1054- [ #9355 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9355 ) ,
1055- [ #9381 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9381 ) ,
1056- [ #9441 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9441 ) )
1088+ [ #9345 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9345 ) ,
1089+ [ #9320 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9320 ) ,
1090+ [ #9355 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9355 ) ,
1091+ [ #9381 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9381 ) ,
1092+ [ #9441 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9441 ) )
10571093- Unwrap Runnable in ThreadPoolExecutor before/after methods
10581094 ([ #9326 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9326 ) )
10591095- Add javaagent to instrumentation bom
@@ -1101,16 +1137,16 @@ too disruptive to adopt right away.
11011137- ` NetClientAttributesExtractor ` and ` NetServerAttributesExtractor `
11021138 have been deprecated
11031139 ([ #9165 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9165 ) ,
1104- [ #9156 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9156 ) )
1140+ [ #9156 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9156 ) )
11051141- ` HttpClientAttributesGetter ` now extends ` NetClientAttributesGetter `
11061142 and ` HttpServerAttributesGetter ` extends ` NetServerAttributesGetter `
11071143 ([ #9015 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9015 ) ,
1108- [ #9088 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9088 ) )
1144+ [ #9088 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9088 ) )
11091145- A couple of Spring starter configuration options have been renamed to match Java agent options:
11101146 - ` otel.springboot.httpclients.enabled ` -> ` otel.instrumentation.spring-webmvc.enabled `
11111147 or ` otel.instrumentation.spring-webmvc.enabled ` depending on the underlying http client
11121148 - ` otel.springboot.aspects.enabled ` -> ` otel.instrumentation.annotations.enabled `
1113- ([ #8950 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/8950 ) )
1149+ ([ #8950 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/8950 ) )
11141150- Previously deprecated suppression key ` executor ` was removed from executors module,
11151151 the new suppression key is ` executors `
11161152 ([ #9064 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9064 ) )
@@ -1354,7 +1390,8 @@ too disruptive to adopt right away.
13541390
13551391### Migration notes
13561392
1357- - ` java.util.concurrent ` executors instrumentation suppression key has changed from ` executor ` to ` executors `
1393+ - ` java.util.concurrent ` executors instrumentation suppression key has changed from ` executor ` to
1394+ ` executors `
13581395 ([ #8451 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/8451 ) )
13591396
13601397### 🌟 New javaagent instrumentation
0 commit comments