tbo
tbo

Reputation: 9738

Curl to get Rabbitmq queue size

Is there a way to get the size (remaining messages) of a queue in rabbitmq with a simple Curl?

Something like curl -xget http://host:1234/api/queue/test/stats

Thank you

Upvotes: 22

Views: 59285

Answers (5)

RSX
RSX

Reputation: 374

I appreciate this is an old post & that the question specifically states using "curl" but thought it might be useful to add that the "rabbitmqctl list_queues" command provides the message count for each queue

Upvotes: 1

pinepain
pinepain

Reputation: 12859

Use HTTP API from Management Plugin.

It looks you may benefit from /api/queues/(vhost)/(name) one. The output is in plain json, so you won't miss messages field (and related).

Upvotes: 7

gabrielson
gabrielson

Reputation: 111

As much as I love hacky sed one-liners this is probably the cleanest solution:

curl -s -u <user>:<password> http://<host>:<port>/api/queues/<virtual-host>/<queue> | jq .messages

Upvotes: 11

Sahil Gulati
Sahil Gulati

Reputation: 15141

curl -u login:password http://localhost:15672/api/queues | sed 's/,/\n/g' | grep '"messages"\:'

Rabbitmq v3.3.4 PHP library based on HTTP api.

REQRequest

Upvotes: 0

tbo
tbo

Reputation: 9738

Finally I did the trick with the following:

curl -s -i -u guest:guest http://host:port/api/queues/vhost/queue_name | sed 's/,/\n/g' | grep '"messages"' | sed 's/"messages"://g'

Upvotes: 29

Related Questions