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

Alfred Hiebl commented on CAMEL-4636:
-------------------------------------

See also Camel-Users thread 
http://camel.465427.n5.nabble.com/Tracing-exceptions-td4964120.html 
                
> Tracing of exceptions
> ---------------------
>
>                 Key: CAMEL-4636
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4636
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.6.0
>            Reporter: Alfred Hiebl
>
> When a bean in a traced route throws an exception (e.g. NullPointerException) 
> one would expect to see that in the causedByException property of the 
> DefaultTraceEventMessage. But the exception is null.
> The reason is that in DefaultTraceEventMessage the causedByException is set 
> to exchange.getException(), at a time where it is already handled. The 
> exception is still available as property Exchange.EXCEPTION_CAUGHT.
> Suggestion for change:
> {code}
> public DefaultTraceEventMessage(final Date timestamp, final 
> ProcessorDefinition<?> toNode, final Exchange exchange) {
>         this.tracedExchange = exchange;
>         ...
>         this.causedByException = exchange.getException() != null ? 
> exchange.getException().toString()
>                               : extractExceptionCaught(exchange);
> } 
>  
> // used to set causedByException in cases where the exception is already 
> handled 
> private static String extractExceptionCaught(Exchange exchange) {
>       Exception exceptionCaught = (Exception) 
> exchange.getProperty(Exchange.EXCEPTION_CAUGHT);
>       return (exceptionCaught != null ? exceptionCaught.toString() : null);
> }
> {code}

--
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

        

Reply via email to