I had a similar situation and i used the MDC logger to add a new header "x-correlation-id" or "x-header-id" and stored my unique id in the exchange as well as on the spring endpoint to track my requests. And with MDCUnitofWork class extension to my class I was able to access my current exchange as well.
On Wed, Nov 29, 2017 at 5:19 PM, Dennis Holunder <dennish...@gmail.com> wrote: > Well, at least in my case its much easier to overwrite the exchange id > in each route part. > > 2017-11-29 17:10 GMT+01:00 Claus Ibsen-2 [via Camel] > <ml+s465427n5815927...@n5.nabble.com>: > > Yeah that is correct, so you would have to either overwrite the > > existing breadcrumbId header, or use some of your own header for this > > "special id" > > > > On Wed, Nov 29, 2017 at 4:45 PM, Dennis Holunder <[hidden email]> wrote: > > > >> but as far as I understand uuid generator doesn't have access to the > >> current exchange, so there is no way to append my id from body to the > >> exchange id or message id > >> > >> 2017-11-29 15:02 GMT+01:00 Claus Ibsen-2 [via Camel] > >> <[hidden email]>: > >>> If you want to have the id transffered over the wire, you cannot use > >>> exchange id, as its transient. > >>> > >>> You can use the breadcrumb-id, and plugin a different uuid generator in > >>> Camel. > >>> http://camel.apache.org/mdc-logging.html > >>> > >>> > >>> On Wed, Nov 29, 2017 at 2:40 PM, Dennis Holunder <[hidden email]> > wrote: > >>> > >>>> Hi, > >>>> > >>>> for easier reading logs I'd like to append db record id to the > >>>> exchange id, but it only works in current route. After the exchange is > >>>> sent to queue, the appended part is lost > >>>> > >>>> from("direct:source") > >>>> .setBody("id from DB) > >>>> .process(exchange-> > >>>> exchange.setExchangeId(exchange.getExchangeId() + "-myid-" + > >>>> exchange.getIn().getBody())) > >>>> .process(exchange -> System.out.println(exchange.getExchangeId()) > >>>> to(queue); > >>>> > >>>> // now in queue "-myid-" is not present > >>>> from(queue()).process(exchange -> > >>>> System.out.println(exchange.getExchangeId())); > >>>> > >>>> > >>>> Is there a way to preserver the changed id? > >>>> > >>>> Dennis > >>> > >>> > >>> > >>> -- > >>> Claus Ibsen > >>> ----------------- > >>> http://davsclaus.com @davsclaus > >>> Camel in Action 2: https://www.manning.com/ibsen2 > >>> > >>> > >>> ________________________________ > >>> If you reply to this email, your message will be added to the > discussion > >>> below: > >>> > >>> http://camel.465427.n5.nabble.com/preserve-custom-exchange- > id-or-custom-message-id-tp5815908p5815909.html > >>> To unsubscribe from Camel, click here. > >>> NAML > > > > > > > > -- > > Claus Ibsen > > ----------------- > > http://davsclaus.com @davsclaus > > Camel in Action 2: https://www.manning.com/ibsen2 > > > > > > ________________________________ > > If you reply to this email, your message will be added to the discussion > > below: > > http://camel.465427.n5.nabble.com/preserve-custom-exchange- > id-or-custom-message-id-tp5815908p5815927.html > > To unsubscribe from Camel, click here. > > NAML > -- Dicken George