我正在尝试花时间将消息传递给Apache Camel中的IBM MQ队列。以下是路线配置,
from("direct:deliver-route-2").process("mySampleProcessor").split().method("messageSplitterBean", "splitMessage").shareUnitOfWork().stopOnException().toD("mqDeliverJms:${headers.Deliver}?preserveMessageQos=true");
我有一个拆分器来拆分消息列表,并使用消息标题" Deliver"动态地传递(toD)消息。
我使用了其中一个问题中给出的MessageHistory建议,但后来我没有看到(toD)将消息传递给IBM MQ的时间。
String MessageHist = org.apache.camel.util.MessageHelper.dumpMessageHistoryStacktrace(exchange,
new DefaultExchangeFormatter(), false);
这是消息历史记录,
答案 0 :(得分:2)
您可以使用“EventNotifier”捕获有时间的ExchangeSent
事件,例如Camel文档中的示例很少:http://camel.apache.org/eventnotifier-to-log-details-about-all-sent-exchanges.html