This release targets the OpenTelemetry SDK 1.17.0.
Note that all artifacts other than io.opentelemetry.javaagent:opentelemetry-javaagent
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.
This release of the opentelemetry-instrumentation-api
represents a release candidate for this artifact, and we are expecting this artifact to be declared stable in the next month or two.
Migration notes
- The
@WithSpan
and@SpanAttribute
annotations has been moved from theio.opentelemetry:opentelemetry-extension-annotations
artifact to theio.opentelemetry.instrumentation:opentelemetry-instrumentation-annotations
in order to live and evolve alongside the instrumentation itself. The instrumentation will continue to support the old artifact for backwards compatibility, but new annotation-based features will only be built out and supported with the new annotation artifact. InstrumenterBuilder.newInstrumenter()
is renamed toInstrumenterBuilder.buildInstrumenter()
(#6363)io.opentelemetry.instrumentation.api.config.Config
is deprecated (#6360)HttpCommonAttributesGetter.requestContentLengthUncompressed()
andresponseContentLengthUncompressed
are deprecated (#6383)- Ktor 2.0 instrumentation name is changed from
io.opentelemetry.ktor-1.0
toio.opentelemetry.ktor-2.0
(#6452) io.opentelemetry.opentelemetry-annotations-1.0
instrumentation name is changed toio.opentelemetry.opentelemetry-instrumentation-annotations-1.16
(#6450)- Liberty instrumentation names are changed from
io.opentelemetry.liberty
andio.opentelemetry.liberty-dispatcher
toio.opentelemetry.liberty-20.0
andio.opentelemetry.liberty-dispatcher-20.0
(#6456) - The 2-arg variant of HttpCommonAttributesGeter#statusCode() is deprecated (#6466)
- The
opentelemetry-spring-starter
artifact has been renamed toopentelemetry-spring-boot-starter
, theopentelemetry-zipkin-exporter-starter
artifact has been renamed toopentelemetry-zipkin-spring-boot-starter
, and theopentelemetry-zipkin-exporter-starter
artifact has been renamed toopentelemetry-zipkin-spring-boot-starter
(#6453) - Update net semantic convention changes based on recent specification changes:
net.peer.ip
renamed tonet.sock.peer.addr
,net.host.ip
renamed tonet.sock.host.addr
,net.peer.name
renamed tonet.sock.peer.name
for socket-level instrumentation, andNetClientAttributesGetter.peerIp()
,NetServerAttributesGetter.peerIp()
, andNetServerAttributesGetter.peerPort()
are deprecated (#6268)
📈 Enhancements
- Move buffer pool metrics out of experimental (#6370)
- Add code attributes to several instrumentations (#6365)
- Add http.client|server.request|response.size metrics (#6376)
- Add Kafka instrumentation to the Spring Boot starter (#6371)
- Extract HTTP request & response content length from headers (#6415)
- Support DataDirect and Tibco Jdbc URLs (#6420)
- Set http.route in spring-autoconfigure webmvc instrumentation (#6414)
- Grizzly: capture all matching request & response headers (#6463)
- Capture messaging header value as span attribute (#6454)
- Add JDBC-specific sanitizer property (#6472)
🛠️ Bug fixes
- Fix duplicate spans for Quarkus gRPC server (#6356)
- Update Kafka library instrumentation to support version 3.0.0 and later (#6457)
- Mongodb: avoid duplicate tracing (#6465)
- Fix netty instrumentation NoSuchElementException (#6469)
🙇 Thank you
This release was possible thanks to the following contributors who shared their brilliant ideas and awesome pull requests:
@anuraaga
@breedx-splk
@cuichenli
@drewhammond
@dzydzany
@gquintana
@iNikem
@jack-berg
@jkwatson
@laurit
@lmolkova
@mateuszrzeszutek
@mingchuno
@ppatierno
@snicoll
@trask
@urwah1996
@XSAM
@zackman0010
@ziitizen