我们如何分析 Activemq 死信队列中的消息
Posted
技术标签:
【中文标题】我们如何分析 Activemq 死信队列中的消息【英文标题】:How do we analyze messages in Dead Letter queue for Activemq 【发布时间】:2018-03-31 18:47:11 【问题描述】:然后,Broker 接收消息并将其发送到死信队列 以便以后分析。
这些是来自 apache activemq 文章的引用。我的策略也是一样的。我想稍后分析死信队列中的消息。我怎样才能做到这一点?
【问题讨论】:
【参考方案1】:死信队列 (DLQ) 与任何其他队列一样,您可以订阅它并使用 JMS MessageConsumer 或 QueueBrowser 使用消息。有了它,您可以从队列中获取消息并像检查任何其他消息一样检查它。当前的 ActiveMQ 客户端通常会在消息属性“dlqDeliveryFailureCause”中向消息存储添加中毒原因,这可以指示导致消息被丢弃的原因。
当然,如果您正在查看 WebConsole,您也可以通过这种方式查看 DLQ 中的消息并检查消息的属性。
基本上分析的原因和方式取决于您,代理提供检索消息的方法,您如何理解它们取决于您。
【讨论】:
【参考方案2】:我做了一个简单的开源command line tool, called A,用于手动处理DLQ消息等。
此命令会将浏览一条消息的内容写入文件以供进一步检查。
a -b tcp://example.org:61616" -c 1 -o msg-data.txt ActiveMQ.DLQ
处理 DLQ 消息的常用方法是能够从系统的某些管理视图中处理它们。与检查内容一样,将错误消息与重试或丢弃消息的选项相关联。这需要一些开发。
【讨论】:
以上是关于我们如何分析 Activemq 死信队列中的消息的主要内容,如果未能解决你的问题,请参考以下文章