open-telemetry / semantic-conventions

Defines standards for generating consistent, accessible telemetry across a variety of domains
Apache License 2.0
220 stars 141 forks source link

Create prototypes to validate the proposed semantic conventions for messaging #653

Open pyohannes opened 1 year ago

pyohannes commented 1 year ago

The messaging workgroup has already merged and is still working on several changes to the existing semantic conventions, the most important one being a proposal for span structures for messaging scenarios (https://github.com/open-telemetry/oteps/pull/220).

In order to ground and illustrate the proposed changes, prototypes for several messaging scenarios utilizing those proposed changes need to be created. This is a pre-requisite for declaring stability on any messaging related conventions.

pyohannes commented 1 year ago

@lmolkova analyzed existing Azure SDK messaging instrumentation and its compatibility with the proposed span structure OTEP: https://github.com/open-telemetry/oteps/pull/220#issuecomment-1570661890

pyohannes commented 7 months ago

For stability, we will require prototypes for both traces and also metrics.

pyohannes commented 7 months ago

Here's a PR implementing the span semantic conventions for RabbitMQ in .NET: https://github.com/rabbitmq/rabbitmq-dotnet-client/pull/1261

pyohannes commented 6 months ago

Here's one with Kafka instrumentation in the .NET auto-instrumentation project: open-telemetry/opentelemetry-dotnet-instrumentation#3055

pyohannes commented 6 months ago

As discussed on today's workgroup meeting, here's a list with prototypes for messaging semantic conventions which are either currently available or planned.

Language Product Traces Metrics
.NET Rabbit MQ client :heavy_check_mark:
.NET Kafka auto-instrumentation :heavy_check_mark:
.NET Kafka instrumentation library :heavy_check_mark: :heavy_check_mark: (partly)
Java Azure SDKs :heavy_check_mark: :heavy_check_mark:
.NET Azure SDKs :heavy_check_mark: planned early 2024
Python Azure SDKs :heavy_check_mark:
JS Azure SDKs :heavy_check_mark:
Go Google Pub/Sub :heavy_check_mark: planned late 2024
C++ Google Pub/Sub :heavy_check_mark:
JS Google Pub/Sub :heavy_check_mark: planned late 2024
Java OpenTelemetry instrumentation planned planned
Python OpenTelemetry instrumentation planned planned
.NET MassTransit planned planned