You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Commented) (JIRA)" <ji...@apache.org> on 2012/02/05 10:33:53 UTC

[jira] [Commented] (CAMEL-4978) Dead Letter Channel: add onError with correspondence to onRedelivery

    [ https://issues.apache.org/jira/browse/CAMEL-4978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13200702#comment-13200702 ] 

Claus Ibsen commented on CAMEL-4978:
------------------------------------

I am -1 on this, as the error handling in Camel already have a lot of bells and whistles. And we should be careful to add more to it. As it just confuses people, and there is a lot more to test and ensure works as expected, etc. And people may configure and use it in ways we did not anticipate, causing new "issues".

In your use-case, you can use onException to trigger logic to occur when an exception is thrown.
And if you are exhausted and the DLC moves the message to its DLQ, then you can use a direct endpoint to route to a route, where you can execute logic to occur when the message is moved to the DLQ.
                
> Dead Letter Channel: add onError with correspondence to onRedelivery
> --------------------------------------------------------------------
>
>                 Key: CAMEL-4978
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4978
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: Future
>            Reporter: Andrey Kazantsev
>            Priority: Minor
>              Labels: features
>
> 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.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira