I search how to manage exception in a consumer of service bus azure, how to alert the sender, I search a pattern like Saga, but I don't know if this is the right purpose. When I read the sample code, in the major case, if there are an exception in consumer, the sender is not alert. But in production environement how to manage this for avoid manual resolution.
I have an shipping service that request payment on other service, when the request start there are a flag on the shipping service set to "PaymentRequested", but if there are an execption in the payment service, the flag is still "PaymentRequested" for ever. How to avoid this.
Normally, consumer should send successful event message back if it processed the command message successfully otherwise it should send failure event message. That is how sender will know if operation succeeded or not.
At the same time sender should define a timeout to receive those event messages. In case consumer crashed with exception sender won't get notification within a timeout period. It might mean that the operation failed (or any other reason) and sender could consider to resend command again (command should be idempotent for safe retry) or report failure because of timeout.