我正在使用Artemis 1.3,并且想使用jConsole对其进行监视(如How to monitor Apache Artemis中所建议)。

我通常可以连接到Artemis,但是我对它的用法有一些疑问。
(这些问题主要是针对接口org.apache.activemq.artemis.api.jms.management.JMSQueueControl的问题,因为我认为
这些是将通过JMX调用的方法):

1)我可以通过执行参数为null的队列操作“ listMessages”来显示队列中的所有消息。
它会告诉我消息的参数,例如messageID,优先级,是否持久等。
但是,我无法获取消息的有效负载。哪个命令可以给我消息的内容?
java - 通过jConsole/JMX激活MQ的Artemis-LMLPHP

2)“ listMessages”的过滤器参数是什么?
当我将其设置为null时,我只会得到一个响应,但是对于其他所有值,我只会得到一个空结果。

3)从队列中读取消息时,我无法读取在某个主题上发送的消息。
由于主题的工作方式,这是某种逻辑,但是我希望当我在主题上调用“暂停”时,出现消息
一直保留到我称之为“简历”为止。不幸的是,这不起作用。还有另一种方法可以查看有关某个主题的消息吗?

最佳答案

您可以尝试使用browse()操作。
对于过滤器参数,您需要指定属性值对,例如JMSPriority=4-> listMessages(JMSPriority=4)
不会。除非订阅者持久,否则将不会存储主题消息。

08-16 03:56