You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Tracer] Add Azure Service Bus instrumentation (#7413)
## Summary of changes
New integration disabled by default, to be enabled with
`DD_TRACE_AZURESERVICEBUS_ENABLED=true`
### Created
[ServiceBusSenderSendMessagesAsyncIntegration](https://github.com/Azure/azure-sdk-for-net/blob/25a961e365e147fa446cc76b30ecfb8f4abfc90e/sdk/servicebus/Azure.Messaging.ServiceBus/src/Sender/ServiceBusSender.cs#L226)
* Creates a span
### Created
[ServiceBusReceiverReceiveMessagesAsyncIntegration](https://github.com/Azure/azure-sdk-for-net/blob/25a961e365e147fa446cc76b30ecfb8f4abfc90e/sdk/servicebus/Azure.Messaging.ServiceBus/src/Receiver/ServiceBusReceiver.cs#L298)
* On begin: Does nothing. On serverless message reception can block for
60s, so we wait until something is actually read
* On end:
1. Creates a new span extracting context from Service Bus message and
~~parents/~~ links. ~~Parenting is used when all contexts are the same,
span links otherwise.~~
2. Rewrites the contex for all messages so they point to the span we
just created
### AzureFunctionsCommon changes
On service bus trigger, extracts context from service bus messages to
set the parent. Given ServiceBusReceiverReceiveMessagesAsyncIntegration
this should be one single context, warn otherwise.
### InstrumentMessageIntegration changes
Add context to all messages.
### Test coverage
Service Bus integration tests for sending, receiving and
~~parenting/~~ linking.
### Limitations
* Batching not included
0 commit comments