[rabbitmq-discuss] Question Regarding RabbitMQ Administration

Simon MacMullen simon at rabbitmq.com
Fri Dec 2 18:11:24 GMT 2011

On 01/12/11 15:13, misiti3780 wrote:
> I am running RabbitMQ for doing a lot of asynchronous processing via
> Django-Celery in a web app.
> I have a couple questions regarding how to monitor this process:
> The problem I am seeing is for some reason, my queues are getting
> overloaded and then when I try
> to purge the queues using rabbitmqadmin, it says it cannot connect. I
> am trying to track down the problem
> and it looks like there must be an upper bound to the number of
> messages a broker can handle but I guess
> what I am looking for is
> why would rabbitmqadmin return a "cannot connect error"

I assume that you are only getting this error when trying to *purge* the 
queue (not list queues or similar).

rabbitmqadmin talks to the management plugin, which in turn gets 
information about the state of rabbit from mnesia and statistics events 
which are emitted by queues, connections and channels. So to list queues 
it does *not* need to contact each queue to query it for stats.

However, to purge a queue it does need to contact that queue. If the 
queue is busy it might have a large mailbox in front of it, in which 
case the request to purge might take a while to get to the front. 
However, I would hope mgmt would not time out. Can you show me the error 
message you're seeing?

> what is the best way to monitor rabbitmq? rabbitmqctl + rabbitmqadmin
> or something else
> like munin.

I would say use something that talks to the management plugin - such as 
rabbitmqadmin. Some of the community-developed scripts do this too. If 
you are worried about queues being overloaded, don't use rabbitmqctl as 
it *does* need to contact every queue for list_queues.

Cheers, Simon

Simon MacMullen
RabbitMQ, VMware

More information about the rabbitmq-discuss mailing list