rabbitmqadmin
v2 is a major revision of one of the RabbitMQ's CLI tools.
If you are migrating from the original rabbitqadmin
, please see CLI Changes
to learn about a few breaking change in the interface.
To download a binary build, see Releases.
For usage documentation, see Usage.
This version of rabbitmqadmin
has a few ideas in mind:
- This is a major version bump. Therefore, breaking changes are OK.
rabbitmqadmin
hasn't seen a revision in thirteen years rabbitmqadmin
should be standalone binary. There are very few reasons not to build and distribute it that way- v2 should be a distributed via GitHub releases and not a special
rabbitmq_management
endpoint - There is a lot of room to improve validation of flags and arguments, since breaking changes are OK for v2
- Output should be revisited: what columns are output by default, whether columns should be selectable
- Support for JSON and CSV was a popular addition in
rabbitmqctl
,rabbitmq-diagnostics
, etc. Perhapsrabbitmqadmin
should consider supporting them, too?
This version of rabbitmqadmin
should be considered reasonably mature to be used.
Before migrating, please see CLI Changes to learn about a few breaking change in the interface.
To learn about what command groups and specific commands are available, run
rabbitmqadmin --help
Note that in this version, global flags must precede the command category (e.g. list
) and the command itself:
rabbitmqadmin --vhost "events" declare queue --name "target.quorum.queue.name" --type "quorum" --durable true
The same command will display global flags. To learn about a specific command, append
--help
to it:
rabbitmqadmin declare queue --help
rabbitmqadmin list nodes
rabbitmqadmin list vhosts
rabbitmqadmin list users
rabbitmqadmin list queues
rabbitmqadmin --vhost "monitoring" list queues
rabbitmqadmin list exchanges
rabbitmqadmin --vhost "events" list exchanges
rabbitmqadmin list bindings
rabbitmqadmin --vhost "events" list bindings
rabbitmqadmin --vhost "events" declare queue --name "target.quorum.queue.name" --type "quorum" --durable true
rabbitmqadmin --vhost "events" declare queue --name "target.stream.name" --type "stream" --durable true
rabbitmqadmin --vhost "events" declare queue --name "target.classic.queue.name" --type "classic" --durable false --auto_delete true
rabbitmqadmin --vhost "events" delete queue --name "target.queue.name"
Compared to the original rabbitmq
, this version:
- Is distributed as a standalone binary and does not depend on Python
- Uses much stricter CLI argument validation and has (relatively minor) breaking changes in the CLI
- Is better documented
Global flags in rabbitmqadmin
v2 must precede the command category (e.g. list
) and the command itself,
namely various HTTP API endpoint options and --vhost
:
rabbitmqadmin --vhost "events" declare queue --name "target.quorum.queue.name" --type "quorum" --durable true
Please use GitHub Discussions in this repository and RabbitMQ community Discord server.
This tool, rabbitmqadmin
(v2 and later versions), is dual-licensed under
the Apache Software License 2.0 and the MIT license.