When an error occurs there can be situation when some actions should be performed before next redelivery attempt. These actions can be custom logging (in case of Dead Letter Channel we don't have control on logger name and format), creating incident request in internal company system, etc.
Current version of Dead Letter Channel provides support for specifying processor which is called when next redelivery attempt is performed. However, if delay between attempts is long, this can be too late.
I think we can implement support for specifying processor which will be called when error occurs, e.g., onError property. Then this processor with information from provided Exchange can take appropriate actions. For example, it can save this message for further investigation, while Dead Letter Channel will keep going on redelivering it.
If this feature is worth to be implemented, I can prepare a patch. I implemented a work-around in my current project using onRedelivery, but I don't like it because of latency in redelivery interval.