Skip to content

[FEATURE REQ] Auto Instrumented distinction between Completed and Dead-lettered ServiceBus proceed messages spans in ApplicationInsights #19562

Description

@yutyang

Is your feature request related to a problem? Please describe.
Currently, using azure-messaging-servicebus sdk v7.X.X+ with azure-core-tracing-opentelemetry and the app insights 3.0 agent as described in this doc enables auto instrumentation of ServiceBus.message, ServiceBus.send and ServiceBus.process to app insights.

However, whether the processed message gets Dead-lettered or Completed, or Abandoned, the auto instrumented span is the same.

Example of an auto instrumented span for processed ServiceBus message:

Dependency span name: ServiceBus.process

with the following custom dimensions:

CustomDimensions key CustomDimensions value
az.namespace Microsoft.ServiceBus
message_bus.destination {topic name}/subscriptions/{subscription name}
x-opt-enqueued-time {enqueue time}

Describe the solution you'd like
All different message processing types (Completed, Dead-lettered, Abandoned, Deferred etc.) should be surfaced differently, ideally using a different span name. This would make the experience consistent with the auto-instrumented specs of the dotnet service bus SDK.

E.g. Dependency span name: ServiceBus.complete/ServiceBus.deadLettered

Describe alternatives you've considered
The type of processing could also be in the CustomDimensions
E.g.

CustomDimensions key CustomDimensions value
az.namespace Microsoft.ServiceBus
process_type {Completed}/{Dead-lettered} etc
message_bus.destination {topic name}/subscriptions/{subscription name}
x-opt-enqueued-time {enqueue time}

Metadata

Metadata

Assignees

No one assigned

    Labels

    ClientThis issue points to a problem in the data-plane of the library.Service Buscustomer-reportedIssues that are reported by GitHub users external to the Azure organization.feature-requestThis issue requires a new behavior in the product in order be resolved.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions