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

Service Bus: Client Identifier Support #28904

Closed
jsquire opened this issue May 17, 2022 · 0 comments
Closed

Service Bus: Client Identifier Support #28904

jsquire opened this issue May 17, 2022 · 0 comments
Assignees
Labels
Client This issue points to a problem in the data-plane of the library. Service Bus
Milestone

Comments

@jsquire
Copy link
Member

jsquire commented May 17, 2022

Summary

When creating one of the Service Bus client types, it can be useful for a host application to be able to uniquely identify the client instance. The Service Bus service also supports setting the identifier of an AMQP link, which it will associate with some error messages to make it easier to correlate errors with a given client instance.

Scope of Work

  • The options for each Service Bus client type (sender, receiver, processor) should be extended with a string-based Identifier property, defaulting to null if not supplied by callers.

  • The Service Bus client types should be extended with an Identifier property, mapping to the Identifer received as part of their client options. If the options do not specify an identifier, a unique one should be generated.

  • When opening an AMQP link for receiving, the identifier should be added to a link property named com.microsoft:receiver-name so that it can be used by the service with error messages. (example)

  • When opening an AMQP link for receiving, the identifier should be used as the Target in the link settings if doing so us supported by the transport. (example)

  • When opening an AMQP link for sending, the identifier should be used as the Source in the link settings if doing so is supported by the transport. (example)

  • There should be no change to the logic when opening an AMQP RequestResponse link for management purposes; the identifier is not supported in this context.

Success Criteria

  • The API changes have been informally reviewed by the language architects and approved.

  • The client options identified in the scope have been enhanced to include an Identifier property.

  • The client types identifier in the scope have been enhanced to accept the identifier from the options, expose it via an Identifier property, and make use of it when creating links.

  • The tests necessary for ensuring the feature works as intended have been created or adjusted and pass reliably.

  • Existing tests continue to produce deterministic results and pass reliably.

References and Related

@jsquire jsquire added Service Bus Client This issue points to a problem in the data-plane of the library. labels May 17, 2022
@jsquire jsquire added this to the [2022] July milestone May 17, 2022
@conniey conniey modified the milestones: 2022-07, 2022-08 Jun 29, 2022
@ZejiaJiang ZejiaJiang self-assigned this Aug 16, 2022
ZejiaJiang added a commit to ZejiaJiang/azure-sdk-for-java that referenced this issue Aug 22, 2022
ZejiaJiang added a commit that referenced this issue Sep 19, 2022
* Service Bus client identifier #28904

* consistent code style & add some more test
Repository owner moved this from Planned to Done in Azure SDK for Service Bus Sep 19, 2022
@github-actions github-actions bot locked and limited conversation to collaborators Apr 11, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Client This issue points to a problem in the data-plane of the library. Service Bus
Projects
Status: Done
Development

No branches or pull requests

3 participants