有没有办法返回未确认的消息数?
我正在使用此代码来获取队列中的消息数量:
DeclareOk declareOk = amqpAdmin.getRabbitTemplate().execute(
new ChannelCallback<DeclareOk>() {
public DeclareOk doInRabbit(Channel channel)
throws Exception {
return channel.queueDeclarePassive(name);
}
});
return declareOk.getMessageCount();
但我也想知道未确认消息的数量。
我已经看到RabbitMQ管理工具包含了这些信息(对于每个队列,它给出了Ready / Unacked和Total消息的数量),我想必须有一种从Java / Spring中检索它的方法。
由于
更新
Oks,似乎没有办法以编程方式完成,因为配置/队列的列表不是AMPQ的一部分。
可以启用管理插件并查询有关队列的REST Web服务(以及其他内容)。更多信息:
答案 0 :(得分:9)
正如您在更新中所述,如果您启用了管理插件,则可以查询其余的api:
例如:
`http://username:password@queue-server:15672/api/queues/%2f/queue_name.queue`
这会返回json(其中包括)
如果你有一条通往服务器的安全路线,这是件好事。
答案 1 :(得分:0)
3.8.9版本的实际网址:
http://username:password@queue-server:15672/api/queues/%2F/queue-name