2
2
3
3
## Unreleased
4
4
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
+
5
30
## Version 2.10.0 (2024-11-13)
6
31
7
32
### 🌟 New javaagent instrumentation
53
78
([ #12511 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12511 ) )
54
79
- Fix lettuce instrumentation and tests to pass against latest version
55
80
([ #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
57
83
([ #12583 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12583 ) )
58
84
59
85
## Version 2.9.0 (2024-10-17)
87
113
([ #12265 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12265 ) )
88
114
- Spring Boot Starter: Add auto configuration for spring scheduling instrumentation
89
115
([ #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
91
118
([ #12440 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12440 ) )
92
119
- Support JMX state metrics
93
120
([ #12369 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12369 ) )
122
149
If you are using the Java agent, this only affects you if you are opting in via
123
150
` otel.instrumentation.runtime-telemetry-java17.enable-all=true ` .
124
151
([ #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 ) )
126
153
127
154
### 📈 Enhancements
128
155
155
182
([ #12121 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12121 ) )
156
183
- Fix error span status for successful requests in Ktor
157
184
([ #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() `
159
187
([ #12221 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12221 ) )
160
188
- Fix tracing CoroutineCrudRepository.findById
161
189
([ #12131 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/12131 ) )
181
209
([ #11926 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11926 ) )
182
210
- Ignore Alibaba fastjson ASMClassLoader
183
211
([ #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
185
214
([ #11868 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/11868 ) )
186
215
- Logback appender: map timestamp in nanoseconds if possible
187
216
([ #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.
444
473
([ #10887 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10887 ) )
445
474
- Fix spring kafka interceptor wrappers not delegating some methods
446
475
([ #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 …
448
478
([ #10942 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10942 ) )
449
479
- Metro: ignore UnsupportedOperationException when updating span name
450
480
([ #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.
571
601
` otel.instrumentation.http.client.emit-experimental-telemetry `
572
602
- ` otel.instrumentation.http.server.emit-experimental-metrics ` ->
573
603
` 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 ) )
575
605
- The deprecated Jaeger exporter has been removed
576
606
([ #10241 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10241 ) )
577
607
- Actuator instrumentation has been disabled by default.
578
608
You can enable using ` OTEL_INSTRUMENTATION_SPRING_BOOT_ACTUATOR_AUTOCONFIGURE_ENABLED=true `
579
609
or ` -Dotel.instrumentation.spring-boot-actuator-autoconfigure.enabled=true ` .
580
610
([ #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
582
613
annotation. Use @io .opentelemetry.instrumentation.annotations.WithSpan annotation instead.
583
614
([ #10530 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10530 ) )
584
615
@@ -681,7 +712,7 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
681
712
682
713
- Backport: update jackson packages to v2.16.1
683
714
([ #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 ) )
685
716
- Backport: implement forEach support for aws sqs tracing list
686
717
([ #10195 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10195 ) )
687
718
- Backport: Bridge metric advice in OpenTelemetry API 1.32
@@ -695,7 +726,8 @@ The Spring Boot Starter (`opentelemetry-spring-boot-starter`) is now stable.
695
726
([ #10204 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10204 ) )
696
727
- Backport: Null check for nullable response object in aws sdk 1.1 instrumentation
697
728
([ #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
699
731
([ #10303 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10303 ) )
700
732
- Backport: Fix Netty addListener instrumentation
701
733
([ #10254 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/10254 ) )
@@ -755,8 +787,10 @@ too disruptive to adopt right away.
755
787
- ` process.runtime.jvm.classes.current_loaded ` renamed to ` jvm.classes.count `
756
788
- CPU metrics
757
789
- ` 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)
760
794
- Buffer metrics
761
795
- ` process.runtime.jvm.buffer.limit ` renamed to ` jvm.buffer.memory.limit ` (still experimental)
762
796
- ` process.runtime.jvm.buffer.count ` renamed to ` jvm.buffer.count ` (still experimental)
@@ -857,7 +891,8 @@ too disruptive to adopt right away.
857
891
([ #9698 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9698 ) )
858
892
- Generate only consumer span for sqs receive message
859
893
([ #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) `
861
896
(when opting in to new semconv)
862
897
([ #9676 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9676 ) )
863
898
- Add capability for invokedynamic InstrumentationModules to inject proxies
@@ -885,7 +920,7 @@ too disruptive to adopt right away.
885
920
([ #9774 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9774 ) )
886
921
- Move capturing enduser.id attribute behind a flag
887
922
([ #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 ) )
889
924
- Remove conditional requirement on ` network.peer.address ` and ` network.peer.port `
890
925
(when opting in to new semconv)
891
926
([ #9775 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9775 ) )
@@ -895,7 +930,8 @@ too disruptive to adopt right away.
895
930
- Make ` url.scheme ` opt in for HTTP client metrics and make ` server.port ` required
896
931
(when opting in to new semconv)
897
932
([ #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
899
935
(when opting in to new semconv)
900
936
([ #9799 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9799 ) )
901
937
- Capture ` http.route ` in spring-cloud-gateway
@@ -1049,11 +1085,11 @@ too disruptive to adopt right away.
1049
1085
([ #9335 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9335 ) )
1050
1086
- More support for upcoming semantic convention changes
1051
1087
([ #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 ) )
1057
1093
- Unwrap Runnable in ThreadPoolExecutor before/after methods
1058
1094
([ #9326 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9326 ) )
1059
1095
- Add javaagent to instrumentation bom
@@ -1101,16 +1137,16 @@ too disruptive to adopt right away.
1101
1137
- ` NetClientAttributesExtractor ` and ` NetServerAttributesExtractor `
1102
1138
have been deprecated
1103
1139
([ #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 ) )
1105
1141
- ` HttpClientAttributesGetter ` now extends ` NetClientAttributesGetter `
1106
1142
and ` HttpServerAttributesGetter ` extends ` NetServerAttributesGetter `
1107
1143
([ #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 ) )
1109
1145
- A couple of Spring starter configuration options have been renamed to match Java agent options:
1110
1146
- ` otel.springboot.httpclients.enabled ` -> ` otel.instrumentation.spring-webmvc.enabled `
1111
1147
or ` otel.instrumentation.spring-webmvc.enabled ` depending on the underlying http client
1112
1148
- ` 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 ) )
1114
1150
- Previously deprecated suppression key ` executor ` was removed from executors module,
1115
1151
the new suppression key is ` executors `
1116
1152
([ #9064 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/9064 ) )
@@ -1354,7 +1390,8 @@ too disruptive to adopt right away.
1354
1390
1355
1391
### Migration notes
1356
1392
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 `
1358
1395
([ #8451 ] ( https://github.com/open-telemetry/opentelemetry-java-instrumentation/pull/8451 ) )
1359
1396
1360
1397
### 🌟 New javaagent instrumentation
0 commit comments