To be honest the documentation at http://camel.apache.org/dead-letter-channel.html is a little contradictory and could use some touch-ups:
1. Under "Redelivery default values" the service is turned off and has 0 maximumRedeliveries, yet later it says "By default Camel will try to process the exchange 1 + 5 times." 2. There is no example of how one might log the Exception + stacktrace that caused the DLC to be invoked. This must be a common requirement? On 13 April 2015 at 16:19, Claus Ibsen <claus.ib...@gmail.com> wrote: > The DLC do not magically include stacktraces. It sends the message > as-is. If you want to include stacktraces / exception message or > whatever you need to enrich the message before sending to the DLQ to > include that. > > On Mon, Apr 13, 2015 at 5:12 PM, James Green <james.mk.gr...@gmail.com> > wrote: > > An update: the email is sent just fine (I received it eventually). The > > trouble is later on - the deadLetterChannel does not appear to log a > stack > > trace. > > > > An engineer here is currently scratching his head over this one - unable > to > > see what the route cause is. Any ideas? > > > > On 10 April 2015 at 17:32, Reji Mathews <contactr...@gmail.com> wrote: > > > >> Can u make your Q a little more clear. I assume u got this exception as > >> there is no smtp server on ur local host at Port 25. > >> Obviously it will be caught by ur error handler and since u have used a > >> dead letter handler , after specified retry attempts it will get > persisted > >> to the dead letter uri viz in ur case a jms queue > >> > >> What's the issue exactly.? > >> > >> If you are searching for the stack trace it won't be there as its > caught by > >> ur error handler and message managed . > >> > >> If u remove ur handlers , u will get the connection refused exception > and > >> stack traces. > >> > >> Cheers > >> Reji > >> On 10 Apr 2015 16:51, "James Green" <james.mk.gr...@gmail.com> wrote: > >> > >> > We just saw this in the log: > >> > > >> > 10/Apr/2015 10:56:04,683- DefaultJavaMailSender: Connecting to > >> localhost:25 > >> > 10/Apr/2015 10:56:04,701- DefaultJavaMailSender: Sending MimMessage: > >> > javax.mail.internet.MimeMessage@385158f4 using host: localhost > >> > 10/Apr/2015 10:56:04,715- DeadLetterChannel: Failed delivery for > >> > (MessageId: ID-ngw-audit-01-39856-1428654916549-0-69 on ExchangeId: > >> > ID-ngw-audit-01-39 > >> > 856-1428654916549-0-66). On delivery attempt: 0 caught: > >> > java.lang.NullPointerException > >> > > >> > The endpoint concerned is smtp://localhost and we're sending a > >> MimeMessage > >> > down it. Sadly there's nothing more to go on - should we not expect a > >> stack > >> > trace somewhere? > >> > > >> > Error handler: > >> > > >> > > >> > > >> > errorHandler(deadLetterChannel("activemq:queue:DeliveryReportByEmail.DQL").useOriginalMessage()); > >> > > >> > The logStackTrace should be on by default looking at the camel > sources? > >> > > >> > Thanks, > >> > > >> > James > >> > > >> > > > > -- > Claus Ibsen > ----------------- > Red Hat, Inc. > Email: cib...@redhat.com > Twitter: davsclaus > Blog: http://davsclaus.com > Author of Camel in Action: http://www.manning.com/ibsen > hawtio: http://hawt.io/ > fabric8: http://fabric8.io/ >