Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Messaging RabbitMQ] What to use for destination.name when the default exchange is used (empty string) #1529

Open
joaopgrassi opened this issue Oct 29, 2024 · 1 comment · May be fixed by #1531

Comments

@joaopgrassi
Copy link
Member

joaopgrassi commented Oct 29, 2024

Area(s)

area:messaging

Is your change request related to a problem? Please describe.

In the RabbitMQ conventions we say:

In RabbitMQ, the destination is defined by an exchange and a routing key. messaging.destination.name MUST be set to the name of the exchange. This will be an empty string if the default exchange is used.

In Java, the RabbitMQ instrumentation uses <default> in case the exchange name is empty (default one is used).

It is also "confusing" that we say a destination is composed of exchange and routing key, but we don't say how or if even the routing key is supposed to be part of the destination name attribute.

Describe the solution you'd like

Given there are clients for many languages, the conventions should specify what to use when the default exchange is used. Right now, each language can do their own thing, resulting in inconsistent behavior/value for the destination.name attribute.

Describe alternatives you've considered

No response

Additional context

Java example:
https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/instrumentation/rabbitmq-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/RabbitDeliveryAttributesGetter.java#L41

@github-project-automation github-project-automation bot moved this to V1 - Stable Semantics in Spec: Messaging Semantics Oct 29, 2024
@joaopgrassi joaopgrassi changed the title [Messaging RabbitMQ] What to use for destination.name on the default exchange is used (empty string) [Messaging RabbitMQ] What to use for destination.name when the default exchange is used (empty string) Oct 30, 2024
@joaopgrassi joaopgrassi self-assigned this Oct 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: V1 - Stable Semantics
1 participant