Consider approach suggested by defekt to construct and handle errors.
This could be particularly helpful for error handling between micro services when a clear strategy needs to be in place to know wether an error can be retried (producer side), re-queued (consumer side), dropped (consumer side) or added to DLX (consumer side).
See this article for good explanation about correct error handling in Event driven systems.
Consider approach suggested by defekt to construct and handle errors.
This could be particularly helpful for error handling between micro services when a clear strategy needs to be in place to know wether an error can be retried (producer side), re-queued (consumer side), dropped (consumer side) or added to DLX (consumer side).
See this article for good explanation about correct error handling in Event driven systems.