camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: Problem with tracing streams (and stream caching)
Date Fri, 31 Jan 2014 20:05:45 GMT
What Camel version do you use? Try to upgrade to latest. And try
SNAPSHOT code also.

On Fri, Jan 31, 2014 at 1:34 PM, Joni Nousiainen
<> wrote:
> Hi all!
> I am trying to extend Camel's built-in Tracer's functionality by adding my
> own TraceEventHandler implementation. The implementation places the
> ProcessorDefinition and Exchange inside a wrapper object and then sends it
> to another Camel route (trace route) by using ProducerTemplate.sendBody().
> Trace route then stores node and exchange info (exchange ID, message headers
> etc.) into database, after which the message body is stored to a file using
> Camel file component.
> Trace route itself is working fine but I'm running into problems when I try
> to apply it to inOutRoute below which is basically a HTTP proxy:
> <camelContext id="inOutCamelContext"
> xmlns="" streamCache="true"
> trace="true">
>   <route id="inOutRoute">
>     <from
> uri="jetty://http://localhost:8898?matchOnUriPrefix=true&amp;throwExceptionOnFailure=false&amp;disableStreamCache=false&amp;continuationTimeout=-1"
> />
>     <to
> uri="http4://localhost:8899/?bridgeEndpoint=true&amp;throwExceptionOnFailure=false"
> />
>   </route>
> </camelContext>
> HTTP client receives an empty response body instead of the one returned by
> localhost:8899. If I remove the 'write message body to file' part of trace
> route the response is correct. I've enabled stream cache on the inOutRoute
> but that does not seem to help in this case. I've also tried resetting the
> cached stream manually after the sendBody() call returns but without luck;
> the client still gets an empty response.
> Any suggestions what might be the cause?
> A summary of my use case: I'm trying to come up with sort of a
> general-purpose monitoring tool which could be plugged into any of our other
> Camel contexts easily just by importing in the extended Tracer (and setting
> streamCache and trace to true on the context of course).
> BR,
> Joni Nousiainen

Claus Ibsen
Red Hat, Inc.
Twitter: davsclaus
Author of Camel in Action:
Make your Camel applications look hawt, try:

View raw message