Как получить счетчик очереди для activemq?

Может кто-нибудь помочь мне, как получить Enqueue Count для конкретной очереди в Active MQ?

Вот мой код:

BrokerService broker = new BrokerService()
String queueName= "queue.Test"
ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory('ACTIVEMQ URL')
Connection connection = connectionFactory.createConnection()
connection.start()
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE)
ActiveMQDestination requestDestination = session.createTopic(queueName)
QueueViewMBean view = (QueueViewMBean)broker.getDestination(requestDestination)
println("Count = "+view.getEnqueueCount())

Но, похоже, это не работает. Как я могу это исправить?

«похоже, не работает» - опишите проблему. «это не работает» слишком расплывчато.

Brandon 10.09.2018 15:39
0
1
168
1

Ответы 1

Похоже, вы пытаетесь преобразовать клиентские ресурсы ActiveMQ JMS в JMX MBeans, что, конечно, никогда не сработает. Вам необходимо использовать JMX для доступа к возможностям управления брокером.

Некоторые примеры использования MBean-компонентов можно найти в модульные тесты брокера.

Другие вопросы по теме