OpenTelemetry HTTP Semantic Conventions Compatibility | Honeycomb

OpenTelemetry HTTP Semantic Conventions Compatibility

OpenTelemetry HTTP semantic conventions (SemConv) became stable in 2023.

Warning
For existing users, if your application uses any of the libraries listed below, be careful before upgrading. If you upgrade to a newer version that emits only the new HTTP semantic conventions, your application will start emitting the new attributes’ names, and likely break your downstream workflows that use the older semantic conventions. Read our blog post for more details on how this could impact your usage of Honeycomb.

Use the below tables by language to find impacted instrumentation packages, as published under the OpenTelemetry GitHub organization, and the current status of their compliance with the stable HTTP semantic conventions.

Refer to the OpenTelemetry migration plan for details on how the OpenTelemetry Community is planning for users to handle this breaking change.

In the tables below:

  • OTEL_SEMCONV_STABILITY_OPT_IN supported indicates the range of versions, if any, that support the OTEL_SEMCONV_STABILITY_OPT_IN environment variable.
  • http/dup supported indicates whether the library can be made to produce both old and stable semantic conventions.
  • Only Stable HTTP SemConv Emitted indicates the first version that only the new, stable HTTP semantic conventions can be emitted.

.NET 

Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
OpenTelemetry.Instrumentation.AspNetCore 1.5.1-beta.1 - 1.6.0-beta.3 YES 1.6.0-rc.1/1.6.0
OpenTelemetry.Instrumentation.Http 1.5.1-beta.1 - 1.6.0-beta.3 YES 1.6.0-rc.1/1.6.0
OpenTelemetry.Instrumentation.AspNet.TelemetryHttpModule NO NO NO
OpenTelemetry.Instrumentation.AspNet NO NO 1.7.0-beta.1
OpenTelemetry .NET Automatic Instrumentation v1.0.0-rc.1 - v1.2.0 YES v1.3.0

JavaScript 

Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
@opentelemetry/instrumentation-http NO NO NO
@opentelemetry/instrumentation-fetch NO NO NO
@opentelemetry/instrumentation-xml-http-request NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-aws-sdk NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-connect NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-express NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-fastify NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-graphql NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-hapi NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-koa NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-nestjs-core NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-restify NO NO NO
@opentelemetry/plugins/node/opentelemetry-instrumentation-router NO NO NO
@opentelemetry/plugins/web/opentelemetry-instrumentation-document-load NO NO NO

Python 

Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
opentelemetry-instrumentation 1.22.0/0.43.b0 YES NO
opentelemetry-instrumentation-aiohttp-client NO NO NO
opentelemetry-instrumentation-aiohttp-server NO NO NO
opentelemetry-instrumentation-asgi NO NO NO
opentelemetry-instrumentation-aws_lambda NO NO NO
opentelemetry-instrumentation-boto NO NO NO
opentelemetry-instrumentation-botocore NO NO NO
opentelemetry-instrumentation-django NO NO NO
opentelemetry-instrumentation-falcon NO NO NO
opentelemetry-instrumentation-fastapi NO NO NO
opentelemetry-instrumentation-flask NO NO NO
opentelemetry-instrumentation-httpx NO NO NO
opentelemetry-instrumentation-pyramid NO NO NO
opentelemetry-instrumentation-requests 1.22.0/0.43.b0 YES NO
opentelemetry-instrumentation-starlette NO NO NO
opentelemetry-instrumentation-tornado NO NO NO
opentelemetry-instrumentation-urllib NO NO NO
opentelemetry-instrumentation-urllib3 NO NO NO
opentelemetry-instrumentation-wsgi NO NO NO
opentelemetry-util-http NO NO NO

Ruby 

Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
opentelemetry-instrumentation-action_pack NO NO NO
opentelemetry-instrumentation-aws_sdk NO NO NO
opentelemetry-instrumentation-ethon NO NO NO
opentelemetry-instrumentation-excon NO NO NO
opentelemetry-instrumentation-faraday NO NO NO
opentelemetry-instrumentation-http NO NO NO
opentelemetry-instrumentation-http_client NO NO NO
opentelemetry-instrumentation-net_http NO NO NO
opentelemetry-instrumentation-rack NO NO NO
opentelemetry-instrumentation-rails NO NO NO
opentelemetry-instrumentation-restclient NO NO NO
opentelemetry-instrumentation-sinatra NO NO NO

Go 

Tip
Stable HTTP SemConv has been merged for all of the following Go instrumentation libraries and is awaiting release.
Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
github.com/aws/aws-sdk-go-v2 NO NO NO
github.com/aws/aws-lambda-go/otellambda NO NO NO
github.com/emicklei/go-restful NO NO NO
github.com/gin-gonic/gin NO NO NO
github.com/gorilla/mux NO NO NO
github.com/labstack/echo NO NO NO
google.golang.org/grpc NO NO NO
gopkg.in/macaron.v1 NO NO NO
net/http NO NO NO
net/http/httptrace NO NO NO

Java (agent instrumentation) 

Note
The Honeycomb OpenTelemetry for Java automatic instrumentation agent is currently only compatible with v1.x of the OpenTelemetry Java tools.
Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
Akka HTTP 1.27.0 - Latest 1.x version YES 2.0.0
Apache HttpAsyncClient 1.27.0 - Latest 1.x version YES 2.0.0
Apache HttpClient 1.27.0 - Latest 1.x version YES 2.0.0
Armeria 1.27.0 - Latest 1.x version YES 2.0.0
AsyncHttpClient 1.27.0 - Latest 1.x version YES 2.0.0
AWS SDK 1.27.0 - Latest 1.x version YES 2.0.0
Eclipse Grizzly 1.27.0 - Latest 1.x version YES 2.0.0
Eclipse Jetty HTTP Client 1.27.0 - Latest 1.x version YES 2.0.0
Google HTTP Client 1.27.0 - Latest 1.x version YES 2.0.0
HttpURLConnection 1.27.0 - Latest 1.x version YES 2.0.0
Java Http Client 1.27.0 - Latest 1.x version YES 2.0.0
JAX-RS Client 1.27.0 - Latest 1.x version YES 2.0.0
Jodd Http 1.27.0 - Latest 1.x version YES 2.0.0
Ktor 1.27.0 - Latest 1.x version YES 2.0.0
Kubernetes Client 1.27.0 - Latest 1.x version YES 2.0.0
Netty 1.27.0 - Latest 1.x version YES 2.0.0
OkHttp 1.27.0 - Latest 1.x version YES 2.0.0
Play 1.27.0 - Latest 1.x version YES 2.0.0
Play WS 1.27.0 - Latest 1.x version YES 2.0.0
Ratpack 1.27.0 - Latest 1.x version YES 2.0.0
Reactor Netty 1.27.0 - Latest 1.x version YES 2.0.0
Restlet 1.27.0 - Latest 1.x version YES 2.0.0
Servlet 1.27.0 - Latest 1.x version YES 2.0.0
Spring RestTemplate 1.27.0 - Latest 1.x version YES 2.0.0
Spring Web MVC 1.27.0 - Latest 1.x version YES 2.0.0
Spring WebFlux 1.27.0 - Latest 1.x version YES 2.0.0
Undertow 1.27.0 - Latest 1.x version YES 2.0.0
Vert.x HttpClient 1.27.0 - Latest 1.x version YES 2.0.0

Java (library instrumentation) 

Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
opentelemetry-apache-httpclient-4.3 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-armeria-1.3 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-aws-sdk-1.11 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-aws-sdk-1.11-autoconfigure 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-aws-sdk-2.2 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-aws-sdk-2.2-autoconfigure 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-jetty-httpclient-9.2 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-java-http-client 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-ktor-1.0 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-ktor-2.0 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-netty-4.1 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-okhttp-3.0 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-ratpack-1.7 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-restlet-1.1 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-restlet-2.0 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-spring-web-3.1 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-spring-webmvc-5.3 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-spring-webmvc-6.0 1.27.0 - Latest 1.x version YES 2.0.0
opentelemetry-spring-webflux-5.3 1.27.0 - Latest 1.x version YES 2.0.0

PHP 

Tip
The SemConv package with stable HTTP SemConv is available, but no PHP instrumentation libraries use it yet.
Instrumentation OTEL_SEMCONV_STABILITY_OPT_IN supported http/dup supported Only Stable HTTP SemConv Emitted
CodeIgniter NO NO NO
HttpAsyncClient NO NO NO
Laravel NO NO NO
Slim NO NO NO
Symfony NO NO NO
Wordpress NO NO NO
Yii NO NO NO