繁体   English   中英

从 Java/Spring 检索 RabbitMQ 队列中未确认消息的数量

[英]Retrieving number of unacknowledged messages in RabbitMQ queue from Java/ Spring

有没有办法返回未确认的消息数量?

我正在使用此代码来获取队列中的消息数:

DeclareOk declareOk = amqpAdmin.getRabbitTemplate().execute(
        new ChannelCallback<DeclareOk>() {
            public DeclareOk doInRabbit(Channel channel)
                throws Exception {
                return channel.queueDeclarePassive(name);
            }
        });
return declareOk.getMessageCount();

但我也想知道未确认消息的数量。

我已经看到 RabbitMQ 管理工具包含该信息(对于每个队列,它给出了就绪/未确认和总消息的数量),我想必须有一种方法可以从 Java/Spring 中检索这些信息。

谢谢

更新

好吧,似乎没有办法以编程方式完成,因为配置/队列列表不是 AMPQ 的一部分。

可以启用管理插件并查询有关队列的 REST Web 服务(除其他外)。 更多信息在这里:

http://www.rabbitmq.com/management.html

正如您在更新中所说,如果启用管理插件,则可以查询其余 api:

例如:

`http://username:password@queue-server:15672/api/queues/%2f/queue_name.queue`

这将返回 json 与(除其他外)

  • 消息_未确认
  • 消息就绪

如果您有通往服务器的安全路线,那就太好了。

3.8.9 版本的实际网址:

http://username:password@queue-server:15672/api/queues/%2F/queue-name

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM