Stop swalling exceptions in eventhub client and also expire those connections when dead #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The
Eventhub
producer clients in this library had some confusing logging going on with exceptions that may have been thrown while publishing Eventhub messages.Problematically, these clients may have been swallowing exceptions!
This is most likely a holdover from our previous usage of this library with own custom loggers.
We have removed the exception-swallowing behavior and also added a check for disconnected clients, so we can mark these as closed. Lastly, I also added methods on the connection pool to count open connections and to expire a particular connection.
In addition, this PR increases test coverage for the
eventhub
clients (includingManaged
) to 99%.Future Work
For a future PR, consider expiring connections for the following Service Bus exceptions:
ServiceBusCommunicationError
ServiceBusAuthorizationError
ServiceBusAuthenticationError
ServiceBusConnectionError
All of the above imported from
azure.servicebus.exceptions