Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
RABBITMQCTL(8)		FreeBSD	System Manager's Manual		RABBITMQCTL(8)

NAME
     rabbitmqctl -- tool for managing RabbitMQ nodes

SYNOPSIS
     rabbitmqctl [-q] [-s] [-l]	[-n node] [-t timeout] command
		 [command_options]

DESCRIPTION
     RabbitMQ is an open source	multi-protocol messaging broker.

     rabbitmqctl is a command line tool	for managing a RabbitMQ	server node.
     It	performs all actions by	connecting to the target RabbitMQ node on a
     dedicated CLI tool	communication port and authenticating using a shared
     secret (known as the cookie file).

     Diagnostic	information is displayed if connection failed, the target node
     was not running, or rabbitmqctl could not authenticate to the target node
     successfully.  To learn more, see the RabbitMQ CLI	Tools guide:
     https://www.rabbitmq.com/cli.html and RabbitMQ Networking guide:
     https://www.rabbitmq.com/networking.html

OPTIONS
     -n	node
	     Default node is "rabbit@target-hostname", where target-hostname
	     is	the local host.	 On a host named "myserver.example.com", the
	     node name will usually be "rabbit@myserver" (unless
	     RABBITMQ_NODENAME has been	overridden).  The output of "hostname
	     -s" is usually the	correct	suffix to use after the	"@" sign.  See
	     rabbitmq-server(8)	for details of configuring a RabbitMQ node.

     -q, --quiet
	     Quiet output mode is selected.  Informational messages are	re-
	     duced when	quiet mode is in effect.

     -s, --silent
	     Silent output mode	is selected.  Informational messages are re-
	     duced and table headers are suppressed when silent	mode is	in ef-
	     fect.

     --no-table-headers
	     Do	not output headers for tabular data.

     --dry-run
	     Do	not run	the command.  Only print information message.

     -t	timeout, --timeout timeout
	     Operation timeout in seconds.  Not	all commands support timeouts.
	     Default is	infinity.

     -l, --longnames
	     Must be specified when the	cluster	is configured to use long
	     (FQDN) node names.	 To learn more,	see the	RabbitMQ Clustering
	     guide: https://www.rabbitmq.com/clustering.html

     --erlang-cookie cookie
	     Shared secret to use to authenticate to the target	node.  Prefer
	     using a local file	or the RABBITMQ_ERLANG_COOKIE environment
	     variable instead of specifying this option	on the command line.
	     To	learn more, see	the RabbitMQ CLI Tools guide:
	     https://www.rabbitmq.com/cli.html

COMMANDS
     help [-l] [command_name]

	     Prints usage for all available commands.

	     -l, --list-commands
		     List command usages only, without parameter explanation.

	     command_name
		     Prints usage for the specified command.

     version

	     Displays CLI tools	version

   Nodes
     await_startup

	     Waits for the RabbitMQ application	to start on the	target node

	     For example, to wait for the RabbitMQ application to start:

		   rabbitmqctl await_startup

     reset

	     Returns a RabbitMQ	node to	its virgin state.

	     Removes the node from any cluster it belongs to, removes all data
	     from the management database, such	as configured users and
	     vhosts, and deletes all persistent	messages.

	     For reset and force_reset to succeed the RabbitMQ application
	     must have been stopped, e.g. with stop_app.

	     For example, to resets the	RabbitMQ node:

		   rabbitmqctl reset

     rotate_logs

	     Instructs the RabbitMQ node to perform internal log rotation.

	     Log rotation is performed according to lager settings specified
	     in	configuration file.

	     Note that there is	no need	to call	this command in	case of	exter-
	     nal log rotation (e.g. from logrotate(8)),	because	lager detects
	     renames and automatically reopens log files.

	     For example, this command starts internal log rotation process:

		   rabbitmqctl rotate_logs

	     Rotation is performed asynchronously, so there is no guarantee
	     that it will be completed when this command returns.

     shutdown

	     Shuts down	the node, both RabbitMQ	and its	runtime.  The command
	     is	blocking and will return after the runtime process exits.  If
	     RabbitMQ fails to stop, it	will return a non-zero exit code.
	     This command infers the OS	PID of the target node and therefore
	     can only be used to shut down nodes running on the	same host (or
	     broadly speaking, in the same operating system, e.g. in the same
	     VM	or container)

	     Unlike the	stop command, the shutdown command:

	     +o	 does not require a pid_file to	wait for the runtime process
		 to exit

	     +o	 returns a non-zero exit code if RabbitMQ node is not running

	     For example, this will shut down a	locally	running	RabbitMQ node
	     with default node name:

		   rabbitmqctl shutdown

     start_app

	     Starts the	RabbitMQ application.

	     This command is typically run after performing other management
	     actions that required the RabbitMQ	application to be stopped,
	     e.g. reset.

	     For example, to instruct the RabbitMQ node	to start the RabbitMQ
	     application:

		   rabbitmqctl start_app

     stop [pid_file]

	     Stops the Erlang node on which RabbitMQ is	running.  To restart
	     the node follow the instructions for "Running the Server" in the
	     installation guide: https://rabbitmq.com/download.html

	     If	a pid_file is specified, also waits for	the process specified
	     there to terminate.  See the description of the wait command for
	     details on	this file.

	     For example, to instruct the RabbitMQ node	to terminate:

		   rabbitmqctl stop

     stop_app

	     Stops the RabbitMQ	application, leaving the runtime (Erlang VM)
	     running.

	     This command is typically run prior to performing other manage-
	     ment actions that require the RabbitMQ application	to be stopped,
	     e.g. reset.

	     For example, to instruct the RabbitMQ node	to stop	the RabbitMQ
	     application:

		   rabbitmqctl stop_app

     wait pid_file, wait --pid pid

	     Waits for the RabbitMQ application	to start.

	     This command will wait for	the RabbitMQ application to start at
	     the node.	It will	wait for the pid file to be created if pidfile
	     is	specified, then	for a process with a pid specified in the pid
	     file or the --pid argument, and then for the RabbitMQ application
	     to	start in that process.	It will	fail if	the process terminates
	     without starting the RabbitMQ application.

	     If	the specified pidfile is not created or	erlang node is not
	     started within --timeout the command will fail.  Default timeout
	     is	10 seconds.

	     A suitable	pid file is created by the rabbitmq-server(8) script.
	     By	default	this is	located	in the Mnesia directory.  Modify the
	     RABBITMQ_PID_FILE environment variable to change the location.

	     For example, this command will return when	the RabbitMQ node has
	     started up:

		   rabbitmqctl wait /var/run/rabbitmq/pid

   Cluster management
     await_online_nodes	count

	     Waits for count nodes to join the cluster

	     For example, to wait for two RabbitMQ nodes to start:

		   rabbitmqctl await_online_nodes 2

     change_cluster_node_type type

	     Changes the type of the cluster node.

	     The type must be one of the following:
	     +o	 disc
	     +o	 ram

	     The node must be stopped for this operation to succeed, and when
	     turning a node into a RAM node the	node must not be the only disc
	     node in the cluster.

	     For example, this command will turn a RAM node into a disc	node:

		   rabbitmqctl change_cluster_node_type	disc

     cluster_status

	     Displays all the nodes in the cluster grouped by node type, to-
	     gether with the currently running nodes.

	     For example, this command displays	the nodes in the cluster:

		   rabbitmqctl cluster_status

     force_boot

	     Ensures that the node will	start next time, even if it was	not
	     the last to shut down.

	     Normally when you shut down a RabbitMQ cluster altogether,	the
	     first node	you restart should be the last one to go down, since
	     it	may have seen things happen that other nodes did not.  But
	     sometimes that's not possible: for	instance if the	entire cluster
	     loses power then all nodes	may think they were not	the last to
	     shut down.

	     In	such a case you	can invoke force_boot while the	node is	down.
	     This will tell the	node to	unconditionally	start next time	you
	     ask it to.	 If any	changes	happened to the	cluster	after this
	     node shut down, they will be lost.

	     If	the last node to go down is permanently	lost then you should
	     use forget_cluster_node --offline in preference to	this command,
	     as	it will	ensure that mirrored queues which were mastered	on the
	     lost node get promoted.

	     For example, this will force the node not to wait for other nodes
	     next time it is started:

		   rabbitmqctl force_boot

     force_reset

	     Forcefully	returns	a RabbitMQ node	to its virgin state.

	     The force_reset command differs from reset	in that	it resets the
	     node unconditionally, regardless of the current management	data-
	     base state	and cluster configuration.  It should only be used as
	     a last resort if the database or cluster configuration has	been
	     corrupted.

	     For reset and force_reset to succeed the RabbitMQ application
	     must have been stopped, e.g. with stop_app.

	     For example, to reset the RabbitMQ	node:

		   rabbitmqctl force_reset

     forget_cluster_node [--offline]

	     --offline
		     Enables node removal from an offline node.	 This is only
		     useful in the situation where all the nodes are offline
		     and the last node to go down cannot be brought online,
		     thus preventing the whole cluster from starting.  It
		     should not	be used	in any other circumstances since it
		     can lead to inconsistencies.

	     Removes a cluster node remotely.  The node	that is	being removed
	     must be offline, while the	node we	are removing from must be on-
	     line, except when using the --offline flag.

	     When using	the --offline flag , rabbitmqctl will not attempt to
	     connect to	a node as normal; instead it will temporarily become
	     the node in order to make the change.  This is useful if the node
	     cannot be started normally.  In this case the node	will become
	     the canonical source for cluster metadata (e.g. which queues ex-
	     ist), even	if it was not before.  Therefore you should use	this
	     command on	the latest node	to shut	down if	at all possible.

	     For example, this command will remove the node "rabbit@stringer"
	     from the node "hare@mcnulty":

		   rabbitmqctl -n hare@mcnulty forget_cluster_node
		   rabbit@stringer

     join_cluster seed-node [--ram]

	     seed-node
		     Existing cluster member (seed node) to cluster with.

	     --ram   If	provided, the node will	join the cluster as a RAM
		     node.  RAM	node use is discouraged. Use only if you un-
		     derstand why exactly you need to use them.

	     Instructs the node	to become a member of the cluster that the
	     specified node is in.  Before clustering, the node	is reset, so
	     be	careful	when using this	command.  For this command to succeed
	     the RabbitMQ application must have	been stopped, e.g. with
	     stop_app.

	     Cluster nodes can be of two types:	disc or	RAM.  Disc nodes
	     replicate data in RAM and on disc,	thus providing redundancy in
	     the event of node failure and recovery from global	events such as
	     power failure across all nodes.  RAM nodes	replicate data in RAM
	     only (with	the exception of queue contents, which can reside on
	     disc if the queue is persistent or	too big	to fit in memory) and
	     are mainly	used for scalability.  RAM nodes are more performant
	     only when managing	resources (e.g.	adding/removing	queues,	ex-
	     changes, or bindings).  A cluster must always have	at least one
	     disc node,	and usually should have	more than one.

	     The node will be a	disc node by default.  If you wish to create a
	     RAM node, provide the --ram flag.

	     After executing the join_cluster command, whenever	the RabbitMQ
	     application is started on the current node	it will	attempt	to
	     connect to	the nodes that were in the cluster when	the node went
	     down.

	     To	leave a	cluster, reset the node.  You can also remove nodes
	     remotely with the forget_cluster_node command.

	     For example, this command instructs the RabbitMQ node to join the
	     cluster that "hare@elena" is part of, as a	ram node:

		   rabbitmqctl join_cluster hare@elena --ram

	     To	learn more, see	the RabbitMQ Clustering	guide:
	     https://www.rabbitmq.com/clustering.html

     rename_cluster_node oldnode1 newnode1 [oldnode2 newnode2 ...]

	     Supports renaming of cluster nodes	in the local database.

	     This subcommand causes rabbitmqctl	to temporarily become the node
	     in	order to make the change.  The local cluster node must there-
	     fore be completely	stopped; other nodes can be online or offline.

	     This subcommand takes an even number of arguments,	in pairs rep-
	     resenting the old and new names for nodes.	 You must specify the
	     old and new names for this	node and for any other nodes that are
	     stopped and being renamed at the same time.

	     It	is possible to stop all	nodes and rename them all simultane-
	     ously (in which case old and new names for	all nodes must be
	     given to every node) or stop and rename nodes one at a time (in
	     which case	each node only needs to	be told	how its	own name is
	     changing).

	     For example, this command will rename the node
	     "rabbit@misshelpful" to the node "rabbit@cordelia"

		   rabbitmqctl rename_cluster_node rabbit@misshelpful
		   rabbit@cordelia

	     Note that this command only changes the local database.  It may
	     also be necessary to rename the local database directories, and
	     to	configure the new node name.  For example:

	     1.	  Stop the node:

			rabbitmqctl stop rabbit@misshelpful

	     2.	  Rename the node in the local database:

			rabbitmqctl rename_cluster_node	rabbit@misshelpful
			rabbit@cordelia

	     3.	  Rename the local database directories	(note, you do not need
		  to do	this if	you have set the RABBITMQ_MNESIA_DIR environ-
		  ment variable):

			mv \
			  /var/lib/rabbitmq/mnesia/rabbit\@misshelpful \
			  /var/lib/rabbitmq/mnesia/rabbit\@cordelia
			mv \
			  /var/lib/rabbitmq/mnesia/rabbit\@misshelpful-rename \
			  /var/lib/rabbitmq/mnesia/rabbit\@cordelia-rename
			mv \
			  /var/lib/rabbitmq/mnesia/rabbit\@misshelpful-plugins-expand \
			  /var/lib/rabbitmq/mnesia/rabbit\@cordelia-plugins-expand

	     4.	  If node name is configured e.g. using
		  /etc/rabbitmq/rabbitmq-env.conf it has also be updated
		  there.

	     5.	  Start	the node when ready

     update_cluster_nodes clusternode

	     clusternode
		     The node to consult for up-to-date	information.

	     Instructs an already clustered node to contact clusternode	to
	     cluster when booting up.  This is different from join_cluster
	     since it does not join any	cluster	- it checks that the node is
	     already in	a cluster with clusternode.

	     The need for this command is motivated by the fact	that clusters
	     can change	while a	node is	offline.  Consider a situation where
	     node rabbit@A and rabbit@B	are clustered.	rabbit@A goes down,
	     rabbit@C clusters with rabbit@B, and then rabbit@B	leaves the
	     cluster.  When rabbit@A starts back up, it'll try to contact
	     rabbit@B, but this	will fail since	rabbit@B is not	in the cluster
	     anymore.  The following command will rename node rabbit@B to
	     rabbit@C on node rabbitA

		   update_cluster_nodes	-n rabbit@A rabbit@B rabbit@C

	     To	learn more, see	the RabbitMQ Clustering	guide:
	     https://www.rabbitmq.com/clustering.html

   Replication
     sync_queue	[-p vhost] queue

	     queue   The name of the queue to synchronise.

	     Instructs a mirrored queue	with unsynchronised mirrors (follower
	     replicas) to synchronise them.  The queue will block while	syn-
	     chronisation takes	place (all publishers to and consumers using
	     the queue will block or temporarily see no	activity).  This com-
	     mand can only be used with	mirrored queues.  To learn more, see
	     the RabbitMQ Mirroring guide: https://www.rabbitmq.com/ha.html

	     Note that queues with unsynchronised replicas and active con-
	     sumers will become	synchronised eventually	(assuming that con-
	     sumers make progress).  This command is primarily useful for
	     queues which do not have active consumers.

     cancel_sync_queue [-p vhost] queue

	     queue   The name of the queue to cancel synchronisation for.

	     Instructs a synchronising mirrored	queue to stop synchronising
	     itself.

   User	Management
     Note that all user	management commands rabbitmqctl	only can manage	users
     in	the internal RabbitMQ database.	 Users from any	alternative authenti-
     cation backends such as LDAP cannot be inspected or managed with those
     commands.	rabbitmqctl.

     add_user username password

	     username
		     The name of the user to create.

	     password
		     The password the created user will	use to log in to the
		     broker.

	     For example, this command instructs the RabbitMQ broker to	create
	     a (non-administrative) user named "janeway" with (initial)	pass-
	     word "changeit":

		   rabbitmqctl add_user	janeway	changeit

     authenticate_user username	password

	     username
		     The name of the user.

	     password
		     The password of the user.

	     For example, this command instructs the RabbitMQ broker to	au-
	     thenticate	the user named "janeway" with password "verifyit":

		   rabbitmqctl authenticate_user janeway verifyit

     change_password username newpassword

	     username
		     The name of the user whose	password is to be changed.

	     newpassword
		     The new password for the user.

	     For example, this command instructs the RabbitMQ broker to	change
	     the password for the user named "janeway" to "newpass":

		   rabbitmqctl change_password janeway newpass

     clear_password username

	     username
		     The name of the user whose	password is to be cleared.

	     For example, this command instructs the RabbitMQ broker to	clear
	     the password for the user named "janeway":

		   rabbitmqctl clear_password janeway

	     This user now cannot log in with a	password (but may be able to
	     through e.g. SASL EXTERNAL	if configured).

     delete_user username

	     username
		     The name of the user to delete.

	     For example, this command instructs the RabbitMQ broker to	delete
	     the user named "janeway":

		   rabbitmqctl delete_user janeway

     list_users

	     Lists users.  Each	result row will	contain	the user name followed
	     by	a list of the tags set for that	user.

	     For example, this command instructs the RabbitMQ broker to	list
	     all users:

		   rabbitmqctl list_users

     set_user_tags username [tag ...]

	     username
		     The name of the user whose	tags are to be set.

	     tag     Zero, one or more tags to set.  Any existing tags will be
		     removed.

	     For example, this command instructs the RabbitMQ broker to	ensure
	     the user named "janeway" is an administrator:

		   rabbitmqctl set_user_tags janeway administrator

	     This has no effect	when the user logs in via AMQP,	but can	be
	     used to permit the	user to	manage users, virtual hosts and	per-
	     missions when the user logs in via	some other means (for example
	     with the management plugin).

	     This command instructs the	RabbitMQ broker	to remove any tags
	     from the user named "janeway":

		   rabbitmqctl set_user_tags janeway

   Access control
     clear_permissions [-p vhost] username

	     vhost   The name of the virtual host to which to deny the user
		     access, defaulting	to "/".

	     username
		     The name of the user to deny access to the	specified vir-
		     tual host.

	     Sets user permissions.

	     For example, this command instructs the RabbitMQ broker to	deny
	     the user named "janeway" access to	the virtual host called
	     "my-vhost":

		   rabbitmqctl clear_permissions -p my-vhost janeway

     clear_topic_permissions [-p vhost]	username [exchange]

	     vhost   The name of the virtual host to which to clear the	topic
		     permissions, defaulting to	"/".

	     username
		     The name of the user to clear topic permissions to	the
		     specified virtual host.

	     exchange
		     The name of the topic exchange to clear topic permis-
		     sions, defaulting to all the topic	exchanges the given
		     user has topic permissions	for.

	     Clear user	topic permissions.

	     For example, this command instructs the RabbitMQ broker to	remove
	     topic permissions for user	named "janeway"	for the	topic exchange
	     "amq.topic" in the	virtual	host called "my-vhost":

		   rabbitmqctl clear_topic_permissions -p my-vhost janeway
		   amq.topic

     list_permissions [-p vhost]

	     vhost   The name of the virtual host for which to list the	users
		     that have been granted access to it, and their permis-
		     sions.  Defaults to "/".

	     Lists permissions in a virtual host.

	     For example, this command instructs the RabbitMQ broker to	list
	     all the users which have been granted access to the virtual host
	     called "my-vhost",	and the	permissions they have for operations
	     on	resources in that virtual host.	 Note that an empty string
	     means no permissions granted:

		   rabbitmqctl list_permissions	-p my-vhost

     list_topic_permissions [-p	vhost]

	     vhost   The name of the virtual host for which to list the	users
		     topic permissions.	 Defaults to "/".

	     Lists topic permissions in	a virtual host.

	     For example, this command instructs the RabbitMQ broker to	list
	     all the users which have been granted topic permissions in	the
	     virtual host called "my-vhost:"

		   rabbitmqctl list_topic_permissions -p my-vhost

     list_user_permissions username

	     username
		     The name of the user for which to list the	permissions.

	     Lists user	permissions.

	     For example, this command instructs the RabbitMQ broker to	list
	     all the virtual hosts to which the	user named "janeway" has been
	     granted access, and the permissions the user has for operations
	     on	resources in these virtual hosts:

		   rabbitmqctl list_user_permissions janeway

     list_user_topic_permissions username

	     username
		     The name of the user for which to list the	topic permis-
		     sions.

	     Lists user	topic permissions.

	     For example, this command instructs the RabbitMQ broker to	list
	     all the virtual hosts to which the	user named "janeway" has been
	     granted access, and the topic permissions the user	has in these
	     virtual hosts:

		   rabbitmqctl list_topic_user_permissions janeway

     list_vhosts [vhostinfoitem	...]

	     Lists virtual hosts.

	     The vhostinfoitem parameter is used to indicate which virtual
	     host information items to include in the results.	The column or-
	     der in the	results	will match the order of	the parameters.
	     vhostinfoitem can take any	value from the list that follows:

	     name    The name of the virtual host with non-ASCII characters
		     escaped as	in C.

	     tracing
		     Whether tracing is	enabled	for this virtual host.

	     If	no vhostinfoitem are specified then the	vhost name is dis-
	     played.

	     For example, this command instructs the RabbitMQ broker to	list
	     all virtual hosts:

		   rabbitmqctl list_vhosts name	tracing

     set_permissions [-p vhost]	user conf write	read

	     vhost   The name of the virtual host to which to grant the	user
		     access, defaulting	to "/".

	     user    The name of the user to grant access to the specified
		     virtual host.

	     conf    A regular expression matching resource names for which
		     the user is granted configure permissions.

	     write   A regular expression matching resource names for which
		     the user is granted write permissions.

	     read    A regular expression matching resource names for which
		     the user is granted read permissions.

	     Sets user permissions.

	     For example, this command instructs the RabbitMQ broker to	grant
	     the user named "janeway" access to	the virtual host called
	     "my-vhost", with configure	permissions on all resources whose
	     names starts with "janeway-", and write and read permissions on
	     all resources:

		   rabbitmqctl set_permissions -p my-vhost janeway
		   "^janeway-.*" ".*" ".*"

     set_topic_permissions [-p vhost] user exchange write read

	     vhost   The name of the virtual host to which to grant the	user
		     access, defaulting	to "/".

	     user    The name of the user the permissions apply	to in the tar-
		     get virtual host.

	     exchange
		     The name of the topic exchange the	authorisation check
		     will be applied to.

	     write   A regular expression matching the routing key of the pub-
		     lished message.

	     read    A regular expression matching the routing key of the con-
		     sumed message.

	     Sets user topic permissions.

	     For example, this command instructs the RabbitMQ broker to	let
	     the user named "janeway" publish and consume messages going
	     through the "amp.topic" exchange of the "my-vhost"	virtual	host
	     with a routing key	starting with "janeway-":

		   rabbitmqctl set_topic_permissions -p	my-vhost janeway
		   amq.topic "^janeway-.*" "^janeway-.*"

	     Topic permissions support variable	expansion for the following
	     variables:	username, vhost, and client_id.	Note that client_id is
	     expanded only when	using MQTT.  The previous example could	be
	     made more generic by using	"^{username}-.*":

		   rabbitmqctl set_topic_permissions -p	my-vhost janeway
		   amq.topic "^{username}-.*" "^{username}-.*"

   Monitoring, observability and health	checks
     environment

	     Displays the name and value of each variable in the application
	     environment for each running application.

     list_bindings [-p vhost] [bindinginfoitem ...]

	     Returns binding details.  By default the bindings for the "/"
	     virtual host are returned.	 The -p	flag can be used to override
	     this default.

	     The bindinginfoitem parameter is used to indicate which binding
	     information items to include in the results.  The column order in
	     the results will match the	order of the parameters.
	     bindinginfoitem can take any value	from the list that follows:

	     source_name
		     The name of the source of messages	to which the binding
		     is	attached.  With	non-ASCII characters escaped as	in C.

	     source_kind
		     The kind of the source of messages	to which the binding
		     is	attached.  Currently always exchange.  With non-ASCII
		     characters	escaped	as in C.

	     destination_name
		     The name of the destination of messages to	which the
		     binding is	attached.  With	non-ASCII characters escaped
		     as	in C.

	     destination_kind
		     The kind of the destination of messages to	which the
		     binding is	attached.  With	non-ASCII characters escaped
		     as	in C.

	     routing_key
		     The binding's routing key,	with non-ASCII characters es-
		     caped as in C.

	     arguments
		     The binding's arguments.

	     If	no bindinginfoitem are specified then all above	items are dis-
	     played.

	     For example, this command displays	the exchange name and queue
	     name of the bindings in the virtual host named "my-vhost"

		   rabbitmqctl list_bindings -p	my-vhost exchange_name
		   queue_name

     list_channels [channelinfoitem ...]

	     Returns information on all	current	channels, the logical contain-
	     ers executing most	AMQP commands.	This includes channels that
	     are part of ordinary AMQP connections, and	channels created by
	     various plug-ins and other	extensions.

	     The channelinfoitem parameter is used to indicate which channel
	     information items to include in the results.  The column order in
	     the results will match the	order of the parameters.
	     channelinfoitem can take any value	from the list that follows:

	     pid     Id	of the Erlang process associated with the connection.

	     connection
		     Id	of the Erlang process associated with the connection
		     to	which the channel belongs.

	     name    Readable name for the channel.

	     number  The number	of the channel,	which uniquely identifies it
		     within a connection.

	     user    Username associated with the channel.

	     vhost   Virtual host in which the channel operates.

	     transactional
		     True if the channel is in transactional mode, false oth-
		     erwise.

	     confirm
		     True if the channel is in confirm mode, false otherwise.

	     consumer_count
		     Number of logical AMQP consumers retrieving messages via
		     the channel.

	     messages_unacknowledged
		     Number of messages	delivered via this channel but not yet
		     acknowledged.

	     messages_uncommitted
		     Number of messages	received in an as yet uncommitted
		     transaction.

	     acks_uncommitted
		     Number of acknowledgements	received in an as yet uncom-
		     mitted transaction.

	     messages_unconfirmed
		     Number of published messages not yet confirmed.  On chan-
		     nels not in confirm mode, this remains 0.

	     prefetch_count
		     QoS prefetch limit	for new	consumers, 0 if	unlimited.

	     global_prefetch_count
		     QoS prefetch limit	for the	entire channel,	0 if unlim-
		     ited.

	     If	no channelinfoitem are specified then pid, user, con-
	     sumer_count, and messages_unacknowledged are assumed.

	     For example, this command displays	the connection process and
	     count of unacknowledged messages for each channel:

		   rabbitmqctl list_channels connection
		   messages_unacknowledged

     list_ciphers

	     Lists cipher suites supported by encoding commands.

	     For example, this command instructs the RabbitMQ broker to	list
	     all cipher	suites supported by encoding commands:

		   rabbitmqctl list_ciphers

     list_connections [connectioninfoitem ...]

	     Returns TCP/IP connection statistics.

	     The connectioninfoitem parameter is used to indicate which	con-
	     nection information items to include in the results.  The column
	     order in the results will match the order of the parameters.
	     connectioninfoitem	can take any value from	the list that follows:

	     pid     Id	of the Erlang process associated with the connection.

	     name    Readable name for the connection.

	     port    Server port.

	     host    Server hostname obtained via reverse DNS, or its IP ad-
		     dress if reverse DNS failed or was	disabled.

	     peer_port
		     Peer port.

	     peer_host
		     Peer hostname obtained via	reverse	DNS, or	its IP address
		     if	reverse	DNS failed or was not enabled.

	     ssl     Boolean indicating	whether	the connection is secured with
		     SSL.

	     ssl_protocol
		     SSL protocol (e.g.	"tlsv1").

	     ssl_key_exchange
		     SSL key exchange algorithm	(e.g. "rsa").

	     ssl_cipher
		     SSL cipher	algorithm (e.g.	"aes_256_cbc").

	     ssl_hash
		     SSL hash function (e.g. "sha").

	     peer_cert_subject
		     The subject of the	peer's SSL certificate,	in RFC4514
		     form.

	     peer_cert_issuer
		     The issuer	of the peer's SSL certificate, in RFC4514
		     form.

	     peer_cert_validity
		     The period	for which the peer's SSL certificate is	valid.

	     state   Connection	state; one of:
		     +o	 starting
		     +o	 tuning
		     +o	 opening
		     +o	 running
		     +o	 flow
		     +o	 blocking
		     +o	 blocked
		     +o	 closing
		     +o	 closed

	     channels
		     Number of channels	using the connection.

	     protocol
		     Version of	the AMQP protocol in use; currently one	of:
		     +o	 {0,9,1}
		     +o	 {0,8,0}

		     Note that if a client requests an AMQP 0-9	connection, we
		     treat it as AMQP 0-9-1.

	     auth_mechanism
		     SASL authentication mechanism used, such as "PLAIN".

	     user    Username associated with the connection.

	     vhost   Virtual host name with non-ASCII characters escaped as in
		     C.

	     timeout
		     Connection	timeout	/ negotiated heartbeat interval, in
		     seconds.

	     frame_max
		     Maximum frame size	(bytes).

	     channel_max
		     Maximum number of channels	on this	connection.

	     client_properties
		     Informational properties transmitted by the client	during
		     connection	establishment.

	     recv_oct
		     Octets received.

	     recv_cnt
		     Packets received.

	     send_oct
		     Octets send.

	     send_cnt
		     Packets sent.

	     send_pend
		     Send queue	size.

	     connected_at
		     Date and time this	connection was established, as time-
		     stamp.

	     If	no connectioninfoitem are specified then user, peer host, peer
	     port, time	since flow control and memory block state are dis-
	     played.

	     For example, this command displays	the send queue size and	server
	     port for each connection:

		   rabbitmqctl list_connections	send_pend port

     list_consumers [-p	vhost]

	     Lists consumers, i.e. subscriptions to a queue's message stream.
	     Each line printed shows, separated	by tab characters, the name of
	     the queue subscribed to, the id of	the channel process via	which
	     the subscription was created and is managed, the consumer tag
	     which uniquely identifies the subscription	within a channel, a
	     boolean indicating	whether	acknowledgements are expected for mes-
	     sages delivered to	this consumer, an integer indicating the
	     prefetch limit (with 0 meaning "none"), and any arguments for
	     this consumer.

     list_exchanges [-p	vhost] [exchangeinfoitem ...]

	     Returns exchange details.	Exchange details of the	"/" virtual
	     host are returned if the -p flag is absent.  The -p flag can be
	     used to override this default.

	     The exchangeinfoitem parameter is used to indicate	which exchange
	     information items to include in the results.  The column order in
	     the results will match the	order of the parameters.
	     exchangeinfoitem can take any value from the list that follows:

	     name    The name of the exchange with non-ASCII characters	es-
		     caped as in C.

	     type    The exchange type,	such as:
		     +o	 direct
		     +o	 topic
		     +o	 headers
		     +o	 fanout

	     durable
		     Whether or	not the	exchange survives server restarts.

	     auto_delete
		     Whether the exchange will be deleted automatically	when
		     no	longer used.

	     internal
		     Whether the exchange is internal, i.e. cannot be directly
		     published to by a client.

	     arguments
		     Exchange arguments.

	     policy  Policy name for applying to the exchange.

	     If	no exchangeinfoitem are	specified then exchange	name and type
	     are displayed.

	     For example, this command displays	the name and type for each ex-
	     change of the virtual host	named "my-vhost":

		   rabbitmqctl list_exchanges -p my-vhost name type

     list_hashes

	     Lists hash	functions supported by encoding	commands.

	     For example, this command instructs the RabbitMQ broker to	list
	     all hash functions	supported by encoding commands:

		   rabbitmqctl list_hashes

     list_queues [-p vhost] [--offline | --online | --local] [queueinfoitem
	     ...]

	     Returns queue details.  Queue details of the "/" virtual host are
	     returned if the -p	flag is	absent.	 The -p	flag can be used to
	     override this default.

	     Displayed queues can be filtered by their status or location us-
	     ing one of	the following mutually exclusive options:

	     --offline
		     List only those durable queues that are not currently
		     available (more specifically, their master	node isn't).

	     --online
		     List queues that are currently available (their master
		     node is).

	     --local
		     List only those queues whose master process is located on
		     the current node.

	     The queueinfoitem parameter is used to indicate which queue in-
	     formation items to	include	in the results.	 The column order in
	     the results will match the	order of the parameters.
	     queueinfoitem can take any	value from the list that follows:

	     name    The name of the queue with	non-ASCII characters escaped
		     as	in C.

	     durable
		     Whether or	not the	queue survives server restarts.

	     auto_delete
		     Whether the queue will be deleted automatically when no
		     longer used.

	     arguments
		     Queue arguments.

	     policy  Effective policy name for the queue.

	     pid     Erlang process identifier of the queue.

	     owner_pid
		     Id	of the Erlang process of the connection	which is the
		     exclusive owner of	the queue.  Empty if the queue is non-
		     exclusive.

	     exclusive
		     True if queue is exclusive	(i.e. has owner_pid), false
		     otherwise.

	     exclusive_consumer_pid
		     Id	of the Erlang process representing the channel of the
		     exclusive consumer	subscribed to this queue.  Empty if
		     there is no exclusive consumer.

	     exclusive_consumer_tag
		     Consumer tag of the exclusive consumer subscribed to this
		     queue.  Empty if there is no exclusive consumer.

	     messages_ready
		     Number of messages	ready to be delivered to clients.

	     messages_unacknowledged
		     Number of messages	delivered to clients but not yet ac-
		     knowledged.

	     messages
		     Sum of ready and unacknowledged messages (queue depth).

	     messages_ready_ram
		     Number of messages	from messages_ready which are resident
		     in	ram.

	     messages_unacknowledged_ram
		     Number of messages	from messages_unacknowledged which are
		     resident in ram.

	     messages_ram
		     Total number of messages which are	resident in ram.

	     messages_persistent
		     Total number of persistent	messages in the	queue (will
		     always be 0 for transient queues).

	     message_bytes
		     Sum of the	size of	all message bodies in the queue.  This
		     does not include the message properties (including	head-
		     ers) or any overhead.

	     message_bytes_ready
		     Like message_bytes	but counting only those	messages ready
		     to	be delivered to	clients.

	     message_bytes_unacknowledged
		     Like message_bytes	but counting only those	messages de-
		     livered to	clients	but not	yet acknowledged.

	     message_bytes_ram
		     Like message_bytes	but counting only those	messages which
		     are currently held	in RAM.

	     message_bytes_persistent
		     Like message_bytes	but counting only those	messages which
		     are persistent.

	     head_message_timestamp
		     The timestamp property of the first message in the	queue,
		     if	present.  Timestamps of	messages only appear when they
		     are in the	paged-in state.

	     disk_reads
		     Total number of times messages have been read from	disk
		     by	this queue since it started.

	     disk_writes
		     Total number of times messages have been written to disk
		     by	this queue since it started.

	     consumers
		     Number of consumers.

	     consumer_utilisation
		     Fraction of the time (between 0.0 and 1.0)	that the queue
		     is	able to	immediately deliver messages to	consumers.
		     This can be less than 1.0 if consumers are	limited	by
		     network congestion	or prefetch count.

	     memory  Bytes of memory allocated by the runtime for the queue,
		     including stack, heap and internal	structures.

	     slave_pids
		     If	the queue is mirrored, this lists the IDs of the mir-
		     rors (follower replicas).	To learn more, see the
		     RabbitMQ Mirroring	guide:
		     https://www.rabbitmq.com/ha.html

	     synchronised_slave_pids
		     If	the queue is mirrored, this gives the IDs of the mir-
		     rors (follower replicas) which are	synchronised with the
		     master (leader). To learn more, see the RabbitMQ
		     Mirroring guide: https://www.rabbitmq.com/ha.html

	     state   The state of the queue.  Normally "running", but may be
		     "{syncing,	message_count}"	if the queue is	synchronising.

		     Queues which are located on cluster nodes that are	cur-
		     rently down will be shown with a status of	"down" (and
		     most other	queueinfoitem will be unavailable).

	     If	no queueinfoitem are specified then queue name and depth are
	     displayed.

	     For example, this command displays	the depth and number of	con-
	     sumers for	each queue of the virtual host named "my-vhost"

		   rabbitmqctl list_queues -p my-vhost messages	consumers

     list_unresponsive_queues [--local]	[--queue_timeout milliseconds] [column
	     ...] [--no-table-headers]

	     Tests queues to respond within timeout. Lists those which did not
	     respond

	     For example, this command lists only those	unresponsive queues
	     whose master process is located on	the current node.
		   rabbitmqctl list_unresponsive_queues	--local	name

     node_health_check

	     Performs several health checks of the target node.

	     Verifies the rabbit application is	running	and alarms are not
	     set, then checks that every queue and channel on the node can
	     emit basic	stats.

	     Example:
		   rabbitmqctl node_health_check -n rabbit@hostname

     ping

	     Checks that the node OS process is	up, registered with EPMD and
	     CLI tools can authenticate	with it

	     Example:
		   rabbitmqctl ping -n rabbit@hostname

     report

	     Generate a	server status report containing	a concatenation	of all
	     server status information for support purposes.  The output
	     should be redirected to a file when accompanying a	support	re-
	     quest.

	     For example, this command creates a server	report which may be
	     attached to a support request email:

		   rabbitmqctl report >	server_report.txt

     schema_info [--no-table-headers] [column ...]

	     Lists schema database tables and their properties

	     For example, this command lists the table names and their active
	     replicas:

		   rabbitmqctl schema_info name	active_replicas

     status

	     Displays broker status information	such as	the running applica-
	     tions on the current Erlang node, RabbitMQ	and Erlang versions,
	     OS	name, memory and file descriptor statistics.  (See the
	     cluster_status command to find out	which nodes are	clustered and
	     running.)

	     For example, this command displays	information about the RabbitMQ
	     broker:

		   rabbitmqctl status

   Runtime Parameters and Policies
     Certain features of RabbitMQ (such	as the Federation plugin) are con-
     trolled by	dynamic, cluster-wide parameters. There	are 2 kinds of parame-
     ters: parameters scoped to	a virtual host and global parameters.  Each
     vhost-scoped parameter consists of	a component name, a name and a value.
     The component name	and name are strings, and the value is a valid JSON
     document.	A global parameter consists of a name and value.  The name is
     a string and the value is an arbitrary Erlang data	structure.  Parameters
     can be set, cleared and listed.  In general you should refer to the docu-
     mentation for the feature in question to see how to set parameters.

     Policies is a feature built on top	of runtime parameters.	Policies are
     used to control and modify	the behaviour of queues	and exchanges on a
     cluster-wide basis.  Policies apply within	a given	vhost, and consist of
     a name, pattern, definition and an	optional priority.  Policies can be
     set, cleared and listed.

     clear_global_parameter name

	     Clears a global runtime parameter.	 This is similar to
	     clear_parameter but the key-value pair isn't tied to a virtual
	     host.

	     name    The name of the global runtime parameter being cleared.

	     For example, this command clears the global runtime parameter
	     "mqtt_default_vhosts":

		   rabbitmqctl clear_global_parameter mqtt_default_vhosts

     clear_parameter [-p vhost]	component_name key

	     Clears a parameter.

	     component_name
		     The name of the component for which the parameter is be-
		     ing cleared.

	     name    The name of the parameter being cleared.

	     For example, this command clears the parameter "node01" for the
	     "federation-upstream" component in	the default virtual host:

		   rabbitmqctl clear_parameter federation-upstream node01

     list_global_parameters

	     Lists all global runtime parameters.  This	is similar to
	     list_parameters but the global runtime parameters are not tied to
	     any virtual host.

	     For example, this command lists all global	parameters:

		   rabbitmqctl list_global_parameters

     list_parameters [-p vhost]

	     Lists all parameters for a	virtual	host.

	     For example, this command lists all parameters in the default
	     virtual host:

		   rabbitmqctl list_parameters

     set_global_parameter name value

	     Sets a global runtime parameter.  This is similar to
	     set_parameter but the key-value pair isn't	tied to	a virtual
	     host.

	     name    The name of the global runtime parameter being set.

	     value   The value for the global runtime parameter, as a JSON
		     term.  In most shells you are very	likely to need to
		     quote this.

	     For example, this command sets the	global runtime parameter
	     "mqtt_default_vhosts" to the JSON term {"O=client,CN=guest":"/"}:

		   rabbitmqctl set_global_parameter mqtt_default_vhosts
		   '{"O=client,CN=guest":"/"}'

     set_parameter [-p vhost] component_name name value

	     Sets a parameter.

	     component_name
		     The name of the component for which the parameter is be-
		     ing set.

	     name    The name of the parameter being set.

	     value   The value for the parameter, as a JSON term.  In most
		     shells you	are very likely	to need	to quote this.

	     For example, this command sets the	parameter "node01" for the
	     "federation-upstream" component in	the default virtual host to
	     the following JSON	"guest":

		   rabbitmqctl set_parameter federation-upstream node01
		   '{"uri":"amqp://user:password@server/%2F","ack-mode":"on-publish"}'

     list_policies [-p vhost]

	     Lists all policies	for a virtual host.

	     For example, this command lists all policies in the default vir-
	     tual host:

		   rabbitmqctl list_policies

     set_operator_policy [-p vhost] [--priority	priority] [--apply-to
	     apply-to] name pattern definition

	     Sets an operator policy that overrides a subset of	arguments in
	     user policies.  Arguments are identical to	those of set_policy.

	     Supported arguments are:
	     +o	 expires
	     +o	 message-ttl
	     +o	 max-length
	     +o	 max-length-bytes

     set_policy	[-p vhost] [--priority priority] [--apply-to apply-to] name
	     pattern definition

	     Sets a policy.

	     name    The name of the policy.

	     pattern
		     The regular expression, which when	matches	on a given re-
		     sources causes the	policy to apply.

	     definition
		     The definition of the policy, as a	JSON term.  In most
		     shells you	are very likely	to need	to quote this.

	     priority
		     The priority of the policy	as an integer.	Higher numbers
		     indicate greater precedence.  The default is 0.

	     apply-to
		     Which types of object this	policy should apply to.	 Pos-
		     sible values are:
		     +o	 queues
		     +o	 exchanges
		     +o	 all
		     The default is all	..

	     For example, this command sets the	policy "federate-me" in	the
	     default virtual host so that built-in exchanges are federated:

		   rabbitmqctl set_policy federate-me ^amq.
		   '{"federation-upstream-set":"all"}'

     clear_policy [-p vhost] name

	     Clears a policy.

	     name    The name of the policy being cleared.

	     For example, this command clears the "federate-me"	policy in the
	     default virtual host:

		   rabbitmqctl clear_policy federate-me

     clear_operator_policy [-p vhost] name

	     Clears an operator	policy.	 Arguments are identical to those of
	     clear_policy.

     list_operator_policies [-p	vhost]

	     Lists operator policy overrides for a virtual host.  Arguments
	     are identical to those of list_policies.

   Virtual hosts
     Note that rabbitmqctl manages the RabbitMQ	internal user database.	 Per-
     missions for users	from any alternative authorisation backend will	not be
     visible to	rabbitmqctl.

     add_vhost vhost

	     vhost   The name of the virtual host entry	to create.

	     Creates a virtual host.

	     For example, this command instructs the RabbitMQ broker to	create
	     a new virtual host	called "test":

		   rabbitmqctl add_vhost test

     clear_vhost_limits	[-p vhost]

	     Clears virtual host limits.

	     For example, this command clears vhost limits in vhost "qa_env":

		   rabbitmqctl clear_vhost_limits -p qa_env

     delete_vhost vhost

	     vhost   The name of the virtual host entry	to delete.

	     Deletes a virtual host.

	     Deleting a	virtual	host deletes all its exchanges,	queues,	bind-
	     ings, user	permissions, parameters	and policies.

	     For example, this command instructs the RabbitMQ broker to	delete
	     the virtual host called "test":

		   rabbitmqctl delete_vhost a-vhost

     list_vhost_limits [-p vhost] [--global] [--no-table-headers]

	     Displays configured virtual host limits.

	     --global
		     Show limits for all vhosts.  Suppresses the -p parameter.

     restart_vhost vhost

	     vhost   The name of the virtual host entry	to restart.

	     Restarts a	failed vhost data stores and queues.

	     For example, this command instructs the RabbitMQ broker to
	     restart a virtual host called "test":

		   rabbitmqctl restart_vhost test

     set_vhost_limits [-p vhost] definition

	     Sets virtual host limits.

	     definition
		     The definition of the limits, as a	JSON term.  In most
		     shells you	are very likely	to need	to quote this.

		     Recognised	limits are:
		     +o	 max-connections
		     +o	 max-queues

		     Use a negative value to specify "no limit".

	     For example, this command limits the max number of	concurrent
	     connections in vhost "qa_env" to 64:

		   rabbitmqctl set_vhost_limits	-p qa_env '{"max-connections":
		   64}'

	     This command limits the max number	of queues in vhost "qa_env" to
	     256:

		   rabbitmqctl set_vhost_limits	-p qa_env '{"max-queues":
		   256}'

	     This command clears the max number	of connections limit in	vhost
	     "qa_env":

		   rabbitmqctl set_vhost_limits	-p qa_env '{"max-connections":
		   -1}'

	     This command disables client connections in vhost "qa_env":

		   rabbitmqctl set_vhost_limits	-p qa_env '{"max-connections":
		   0}'

     trace_off [-p vhost]

	     vhost   The name of the virtual host for which to stop tracing.

	     Stops tracing.

     trace_on [-p vhost]

	     vhost   The name of the virtual host for which to start tracing.

	     Starts tracing.  Note that	the trace state	is not persistent; it
	     will revert to being off if the node is restarted.

   Configuration
     decode value passphrase [--cipher cipher] [--hash hash] [--iterations
	     iterations]

	     value passphrase
		     Value to decrypt (as produced by the encode command) and
		     passphrase.

		     For example:

			   rabbitmqctl decode '{encrypted, <<"...">>}'
			   mypassphrase

	     --cipher cipher --hash hash --iterations iterations
		     Options to	specify	the decryption settings.  They can be
		     used independently.

		     For example:

			   rabbitmqctl decode --cipher blowfish_cfb64 --hash
			   sha256 --iterations 10000 '{encrypted,<<"...">>}
			   mypassphrase

     encode value passphrase [--cipher cipher] [--hash hash] [--iterations
	     iterations]

	     value passphrase
		     Value to encrypt and passphrase.

		     For example:

			   rabbitmqctl encode '<<"guest">>' mypassphrase

	     --cipher cipher --hash hash --iterations iterations
		     Options to	specify	the encryption settings.  They can be
		     used independently.

		     For example:

			   rabbitmqctl encode --cipher blowfish_cfb64 --hash
			   sha256 --iterations 10000 '<<"guest">>'
			   mypassphrase

     set_cluster_name name

	     Sets the cluster name to name.  The cluster name is announced to
	     clients on	connection, and	used by	the federation and shovel
	     plugins to	record where a message has been.  The cluster name is
	     by	default	derived	from the hostname of the first node in the
	     cluster, but can be changed.

	     For example, this sets the	cluster	name to	"london":

		   rabbitmqctl set_cluster_name	london

     set_disk_free_limit disk_limit

	     disk_limit
		     Lower bound limit as an integer in	bytes or a string with
		     memory unit symbols (see vm_memory_high_watermark), e.g.
		     512M or 1G.  Once free disk space reaches the limit, a
		     disk alarm	will be	set.

     set_disk_free_limit mem_relative fraction

	     fraction
		     Limit relative to the total amount	available RAM as a
		     non-negative floating point number.  Values lower than
		     1.0 can be	dangerous and should be	used carefully.

     set_log_level [log_level]

	     Sets log level in the running node

	     Supported type values are:
	     +o	 debug
	     +o	 info
	     +o	 warning
	     +o	 error
	     +o	 none

	     Example:
		   rabbitmqctl log_level debug

     set_vm_memory_high_watermark fraction

	     fraction
		     The new memory threshold fraction at which	flow control
		     is	triggered, as a	floating point number greater than or
		     equal to 0.

     set_vm_memory_high_watermark [absolute] memory_limit

	     memory_limit
		     The new memory limit at which flow	control	is triggered,
		     expressed in bytes	as an integer number greater than or
		     equal to 0	or as a	string with memory unit	symbol(e.g.
		     512M or 1G).  Available unit symbols are:

		     k,	kiB  kibibytes (2^10 bytes)

		     M,	MiB  mebibytes (2^20 bytes)

		     G,	GiB  gibibytes (2^30 bytes)

		     kB	     kilobytes (10^3 bytes)

		     MB	     megabytes (10^6 bytes)

		     GB	     gigabytes (10^9 bytes)

   Feature flags
     enable_feature_flag feature_flag

	     Enables a feature flag on the target node.

	     Example:
		   rabbitmqctl enable_feature_flag quorum_queue

     list_feature_flags	[column	...]

	     Lists feature flags

	     Supported column values are:
	     +o	 name
	     +o	 state
	     +o	 stability
	     +o	 provided_by
	     +o	 desc
	     +o	 doc_url

	     Example:
		   rabbitmqctl list_feature_flags name state

   Connection Operations
     close_all_connections [-p vhost] [--global] [--per-connection-delay
	     delay] [--limit limit] explanation

	     -p	vhost
		     The name of the virtual host for which connections	should
		     be	closed.	 Ignored when --global is specified.

	     --global
		     If	connections should be close for	all vhosts.  Overrides
		     -p

	     --per-connection-delay delay
		     Time in milliseconds to wait after	each connection	clos-
		     ing.

	     --limit limit
		     Number of connection to close.  Only works	per vhost.
		     Ignored when --global is specified.

	     explanation
		     Explanation string.

	     Instructs the broker to close all connections for the specified
	     vhost or entire RabbitMQ node.

	     For example, this command instructs the RabbitMQ broker to	close
	     10	connections on "qa_env"	vhost, passing the explanation "Please
	     close":

		   rabbitmqctl close_all_connections -p	qa_env --limit 10
		   'Please close'

	     This command instructs broker to close all	connections to the
	     node:

		   rabbitmqctl close_all_connections --global

     close_connection connectionpid explanation

	     connectionpid
		     Id	of the Erlang process associated with the connection
		     to	close.

	     explanation
		     Explanation string.

	     Instructs the broker to close the connection associated with the
	     Erlang process id connectionpid (see also the list_connections
	     command), passing the explanation string to the connected client
	     as	part of	the AMQP connection shutdown protocol.

	     For example, this command instructs the RabbitMQ broker to	close
	     the connection associated with the	Erlang process id
	     "<rabbit@tanto.4262.0>", passing the explanation "go away"	to the
	     connected client:

		   rabbitmqctl close_connection	"<rabbit@tanto.4262.0>"	"go
		   away"

   Misc
     eval expression

	     Evaluates an Erlang expression on the target node

     hipe_compile directory

	     Performs HiPE-compilation and caches resulting .beam-files	in the
	     given directory.

	     Parent directories	are created if necessary.  Any existing	.beam
	     files from	the directory are automatically	deleted	prior to com-
	     pilation.

	     To	use this precompiled files, you	should set
	     RABBITMQ_SERVER_CODE_PATH environment variable to directory spec-
	     ified in hipe_compile invocation.

	     For example, to HiPE-compile modules and store them to
	     /tmp/rabbit-hipe/ebin directory:

		   rabbitmqctl hipe_compile /tmp/rabbit-hipe/ebin

   Queue Operations
     delete_queue queue_name [--if-empty | -e] [--if-unused | -u]

	     queue_name
		     The name of the queue to delete.

	     --if-empty
		     Delete the	queue if it is empty (has no messages ready
		     for delivery)

	     --if-unused
		     Delete the	queue only if it has no	consumers

	     Deletes a queue.

     purge_queue [-p vhost] queue

	     queue   The name of the queue to purge.

	     Purges a queue (removes all messages in it).

PLUGIN COMMANDS
     RabbitMQ plugins can extend rabbitmqctl tool to add new commands when en-
     abled.  Currently available commands can be found in rabbitmqctl help
     output.  Following	commands are added by RabbitMQ plugins,	available in
     default distribution:

   Shovel plugin
     shovel_status
	     Prints a list of configured Shovels

     delete_shovel [-p vhost] name
	     Instructs the RabbitMQ node to delete the configured shovel by
	     name.

   Federation plugin
     federation_status [--only-down]
	     Prints a list of federation links.

	     --only-down
		     Only list federation links	which are not running.

     restart_federation_link link_id
	     Instructs the RabbitMQ node to restart the	federation link	with
	     specified link_id.

   AMQP	1.0 plugin
     list_amqp10_connections [amqp10_connectioninfoitem	...]
	     Similar to	the list_connections command, but returns fields which
	     make sense	for AMQP-1.0 connections.  amqp10_connectioninfoitem
	     parameter is used to indicate which connection information	items
	     to	include	in the results.	 The column order in the results will
	     match the order of	the parameters.	 amqp10_connectioninfoitem can
	     take any value from the list that follows:

	     pid     Id	of the Erlang process associated with the connection.

	     auth_mechanism
		     SASL authentication mechanism used, such as "PLAIN".

	     host    Server hostname obtained via reverse DNS, or its IP ad-
		     dress if reverse DNS failed or was	disabled.

	     frame_max
		     Maximum frame size	(bytes).

	     timeout
		     Connection	timeout	/ negotiated heartbeat interval, in
		     seconds.

	     user    Username associated with the connection.

	     state   Connection	state; one of:
		     +o	 starting
		     +o	 waiting_amqp0100
		     +o	 securing
		     +o	 running
		     +o	 blocking
		     +o	 blocked
		     +o	 closing
		     +o	 closed

	     recv_oct
		     Octets received.

	     recv_cnt
		     Packets received.

	     send_oct
		     Octets send.

	     send_cnt
		     Packets sent.

	     ssl     Boolean indicating	whether	the connection is secured with
		     SSL.

	     ssl_protocol
		     SSL protocol (e.g.	"tlsv1").

	     ssl_key_exchange
		     SSL key exchange algorithm	(e.g. "rsa").

	     ssl_cipher
		     SSL cipher	algorithm (e.g.	"aes_256_cbc").

	     ssl_hash
		     SSL hash function (e.g. "sha").

	     peer_cert_subject
		     The subject of the	peer's SSL certificate,	in RFC4514
		     form.

	     peer_cert_issuer
		     The issuer	of the peer's SSL certificate, in RFC4514
		     form.

	     peer_cert_validity
		     The period	for which the peer's SSL certificate is	valid.

	     node    The node name of the RabbitMQ node	to which connection is
		     established.

   MQTT	plugin
     list_mqtt_connections [mqtt_connectioninfoitem]
	     Similar to	the list_connections command, but returns fields which
	     make sense	for MQTT connections.  mqtt_connectioninfoitem parame-
	     ter is used to indicate which connection information items	to in-
	     clude in the results.  The	column order in	the results will match
	     the order of the parameters.  mqtt_connectioninfoitem can take
	     any value from the	list that follows:

	     host    Server hostname obtained via reverse DNS, or its IP ad-
		     dress if reverse DNS failed or was	disabled.

	     port    Server port.

	     peer_host
		     Peer hostname obtained via	reverse	DNS, or	its IP address
		     if	reverse	DNS failed or was not enabled.

	     peer_port
		     Peer port.

	     protocol
		     MQTT protocol version, which can be on of the following:
		     +o	 {'MQTT', N/A}
		     +o	 {'MQTT', 3.1.0}
		     +o	 {'MQTT', 3.1.1}

	     channels
		     Number of channels	using the connection.

	     channel_max
		     Maximum number of channels	on this	connection.

	     frame_max
		     Maximum frame size	(bytes).

	     client_properties
		     Informational properties transmitted by the client	during
		     connection	establishment.

	     ssl     Boolean indicating	whether	the connection is secured with
		     SSL.

	     ssl_protocol
		     SSL protocol (e.g.	"tlsv1").

	     ssl_key_exchange
		     SSL key exchange algorithm	(e.g. "rsa").

	     ssl_cipher
		     SSL cipher	algorithm (e.g.	"aes_256_cbc").

	     ssl_hash
		     SSL hash function (e.g. "sha").

	     conn_name
		     Readable name for the connection.

	     connection_state
		     Connection	state; one of:
		     +o	 starting
		     +o	 running
		     +o	 blocked

	     connection
		     Id	of the Erlang process associated with the internal
		     amqp direct connection.

	     consumer_tags
		     A tuple of	consumer tags for QOS0 and QOS1.

	     message_id
		     The last Packet ID	sent in	a control message.

	     client_id
		     MQTT client identifier for	the connection.

	     clean_sess
		     MQTT clean	session	flag.

	     will_msg
		     MQTT Will message sent in CONNECT frame.

	     exchange
		     Exchange to route MQTT messages configured	in rab-
		     bitmq_mqtt	application environment.

	     ssl_login_name
		     SSL peer cert auth	name

	     retainer_pid
		     Id	of the Erlang process associated with retain storage
		     for the connection.

	     user    Username associated with the connection.

	     vhost   Virtual host name with non-ASCII characters escaped as in
		     C.

   STOMP plugin
     list_stomp_connections [stomp_connectioninfoitem]
	     Similar to	the list_connections command, but returns fields which
	     make sense	for STOMP connections.	stomp_connectioninfoitem pa-
	     rameter is	used to	indicate which connection information items to
	     include in	the results.  The column order in the results will
	     match the order of	the parameters.	 stomp_connectioninfoitem can
	     take any value from the list that follows:

	     conn_name
		     Readable name for the connection.

	     connection
		     Id	of the Erlang process associated with the internal
		     amqp direct connection.

	     connection_state
		     Connection	state; one of:
		     +o	 running
		     +o	 blocking
		     +o	 blocked

	     session_id
		     STOMP protocol session identifier

	     channel
		     AMQP channel associated with the connection

	     version
		     Negotiated	STOMP protocol version for the connection.

	     implicit_connect
		     Indicates if the connection was established using im-
		     plicit connect (without CONNECT frame)

	     auth_login
		     Effective username	for the	connection.

	     auth_mechanism
		     STOMP authorization mechanism.  Can be one	of:
		     +o	 config
		     +o	 ssl
		     +o	 stomp_headers

	     port    Server port.

	     host    Server hostname obtained via reverse DNS, or its IP ad-
		     dress if reverse DNS failed or was	not enabled.

	     peer_port
		     Peer port.

	     peer_host
		     Peer hostname obtained via	reverse	DNS, or	its IP address
		     if	reverse	DNS failed or was not enabled.

	     protocol
		     STOMP protocol version, which can be on of	the following:
		     +o	 {'STOMP', 0}
		     +o	 {'STOMP', 1}
		     +o	 {'STOMP', 2}

	     channels
		     Number of channels	using the connection.

	     channel_max
		     Maximum number of channels	on this	connection.

	     frame_max
		     Maximum frame size	(bytes).

	     client_properties
		     Informational properties transmitted by the client	during
		     connection

	     ssl     Boolean indicating	whether	the connection is secured with
		     SSL.

	     ssl_protocol
		     TLS protocol (e.g.	"tlsv1").

	     ssl_key_exchange
		     TLS key exchange algorithm	(e.g. "rsa").

	     ssl_cipher
		     TLS cipher	algorithm (e.g.	"aes_256_cbc").

	     ssl_hash
		     SSL hash function (e.g. "sha").

   Management agent plugin
     reset_stats_db [--all]
	     Reset management stats database for the RabbitMQ node.

	     --all   Reset stats database for all nodes	in the cluster.

SEE ALSO
     rabbitmq-diagnostics(8), rabbitmq-plugins(8), rabbitmq-server(8),
     rabbitmq-queues(8), rabbitmq-upgrade(8), rabbitmq-service(8),
     rabbitmq-env.conf(5), rabbitmq-echopid(8)

AUTHOR
     The RabbitMQ Team <info@rabbitmq.com>

RabbitMQ Server		      September	28, 2019	       RabbitMQ	Server

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | COMMANDS | PLUGIN COMMANDS | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=rabbitmqctl&sektion=8&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help