Activemq 检查DLQ消息中的客户端异常

Activemq 检查DLQ消息中的客户端异常,activemq,apache-camel,Activemq,Apache Camel,现在,我正在使用一个JMS队列,该队列具有重新传递策略,这样回滚五次以上的消息将被发送到死信队列 将消息发送到ActiveMQ中的死信队列时,是否有方法查看是什么异常导致该消息回滚?是否可以设置消息属性来指定导致消息失败的原因?您需要查看生成异常的框中的日志。发送到DLQ的实际上只是无法传递的消息。您需要查看生成异常的框中的日志。发送到DLQ的内容实际上只是无法传递的消息。如果您使用死信频道功能 对于AMQ代理,正如上面所回答的,实际上就是无法传递的消息。代理不知道出了什么问题,它只是在消息上得

现在,我正在使用一个JMS队列,该队列具有重新传递策略,这样回滚五次以上的消息将被发送到死信队列


将消息发送到ActiveMQ中的死信队列时,是否有方法查看是什么异常导致该消息回滚?是否可以设置消息属性来指定导致消息失败的原因?

您需要查看生成异常的框中的日志。发送到DLQ的实际上只是无法传递的消息。

您需要查看生成异常的框中的日志。发送到DLQ的内容实际上只是无法传递的消息。

如果您使用死信频道功能 对于AMQ代理,正如上面所回答的,实际上就是无法传递的消息。代理不知道出了什么问题,它只是在消息上得到一个“回滚”信号

如果使用Camel的死信通道功能 然后,Camel将引起的异常存储为Exchange上的一个属性,您可以对失败的消息进行充实,并将其发送到AMQ代理中的死信队列。因此,不让AMQ回滚消息,而是处理异常,并将消息发送到另一个队列,该队列恰好是死信队列。然后,您可以通过从Exchange属性获取stacktrace和/或exception消息,并将其存储在消息的某个位置、头中等来丰富消息


Camel将捕获的异常存储为Exchange上的一个属性,如果使用死信通道功能,则键为:Exchange.exception\u catch

对于AMQ代理,正如上面所回答的,实际上就是无法传递的消息。代理不知道出了什么问题,它只是在消息上得到一个“回滚”信号

如果使用Camel的死信通道功能 然后,Camel将引起的异常存储为Exchange上的一个属性,您可以对失败的消息进行充实,并将其发送到AMQ代理中的死信队列。因此,不让AMQ回滚消息,而是处理异常,并将消息发送到另一个队列,该队列恰好是死信队列。然后,您可以通过从Exchange属性获取stacktrace和/或exception消息,并将其存储在消息的某个位置、头中等来丰富消息


Camel将捕获的异常存储为Exchange上的一个属性,密钥为:Exchange。exception_Capture

是,如果是执行将消息移动到DLQ的AMQ代理,则代理不知道客户端上发生的任何堆栈跟踪等。是,如果是执行将消息移动到DLQ的AMQ代理,然后经纪人不知道客户机上发生的任何StackTrace等。哦,还有一个选项名为:useOriginalMessage,您可能想在Camel网站上搜索它,看看它做了什么,如果使用驼峰死信频道功能。哦,还有一个名为:useOriginalMessage的选项,如果使用驼峰死信频道功能,您可能希望在驼峰网站上搜索该选项以查看其功能。