我们如何分析Activemq的Dead Letter队列中的消息

时间:2017-10-19 16:39:08

标签: java spring-boot activemq dead-letter

  

然后,经纪人接收消息并将其发送到死信队列   这样可以在以后进行分析。

这些是来自apache activemq文章的引用。我的策略也一样。我想稍后分析死信队列中的消息。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

死信队列(DLQ)与任何其他队列一样,您可以使用JMS MessageConsumer或QueueBrowser订阅它并使用消息。通过它,您可以从队列中获取消息并像检查任何其他消息一样进行检查。当前的ActiveMQ客户端通常会在消息属性中为消息存储添加一个毒性原因" dlqDeliveryFailureCause"这可以表明导致信息被丢弃的原因。

当然,如果你正在查看WebConsole,你也可以用这种方式查看DLQ中的消息,并检查消息的属性。

基本上分析的原因和方法取决于你,经纪人提供了检索信息的方法,你如何理解它们取决于你。

答案 1 :(得分:0)

我制作了一个简单的开源command line tool, called A,以便手动处理DLQ消息等。

此命令将把一条消息的内容写入浏览文件以供进一步检查。

a -b tcp://example.org:61616" -c 1 -o msg-data.txt ActiveMQ.DLQ

处理DLQ消息的常用方法是能够从系统的某个管理视图处理它们。与检查内容一样,与错误消息相关联,以及重试或丢弃消息的选项。这需要一些开发。