0

I am using Artemis 1.3 and I want to monitor it using jConsole (as proposed in How to monitor Apache Artemis).

I am generally able to connect to Artemis, but I have some questions to its usage. (These questions are mainly questions to the interface org.apache.activemq.artemis.api.jms.management.JMSQueueControl as I believe that these are the methods that will be called via JMX):

1) I can display all messages on a queue by execution a queue's operation "listMessages" with a parameter null. It will tell me the message's parameters like messageID, priority, whether it's durable, etc. However, I cannot get the payload of the message. Which command can give me the contents of the message? Screenshot of jConsole executing listMessages

2) what is the filter parameter for "listMessages"? I only get a response when I set it to null, but with every other value I only get an empty result.

3) While reading messages from queues works, I fail to read messages that were sent on a topic. This is somehow logic due to the way topics work, but I would have hoped that when I call "pause" on a topic, then the messages remain until I call "resume". Unfortunately this does not work. Is there another way to see what messages arrive on a topic?

Community
  • 1
  • 1
stefan.m
  • 1,912
  • 4
  • 20
  • 36

1 Answers1

1
  1. You can try with browse() operation.

  2. For filter parameter, you need to specify property-value pair like JMSPriority=4 -> listMessages(JMSPriority=4)

  3. No. Until subscriber is durable, messages will not be store for topic.

Varsha
  • 1,150
  • 9
  • 12
  • thanks for answers 2) and 3)! Concerning 1): where do I find the browse() operation? As you see in the screenshot above, there is no such operation in my case. – stefan.m Apr 24 '17 at 10:11
  • Artemis 1.5.0 provides browse() operation. – Varsha Apr 26 '17 at 17:31