Enable management plugin:
rabbitmq-plugins enable rabbitmq_managementList queues:
rabbitmqadmin list queuesWith some columns specified:
rabbitmqadmin list queues vhost name node messagesCan also use this:
rabbitmqctl list_queuesGet messages of a queue:
rabbitmqadmin get queue=<QueueName> count=nThe count=n will get the first n messages.
More options:
-u: username-p: password-f: long format (same on the Web UI).
Full command:
rabbitmqadmin -u <USERNAME> -p <PASSWORD> get queue=<QUEUENAME> count=n -f longPurge queue:
rabbitmqadmin purge queue name=<QueueName>We can use HTTP API instead. Some of the endpoints:
- GET
{{rabbitmq_url}}/api/definitions- The server definitions - exchanges, queues, bindings, users, virtual hosts, permissions, topic permissions, and parameters. Everything apart from messages. - GET
{{rabbitmq_url}}/api/queues?page=1&use_regex=true&name=^{{productQueue}}$- A list of all queues. Use pagination parameters to filter queues. - POST
{{rabbitmq_url}}/api/queues/%2F/{{productQueue}}/get?page=1- Get messages from a queue (This is not an HTTP GET as it will alter the state of the queue). The value%2Fis the encoded value of/vhost.
Remember to use basic authentication of HTTP when call those API if needed.