1RABBITMQCTL(8)            BSD System Manager's Manual           RABBITMQCTL(8)
2

NAME

4     rabbitmqctl — tool for managing RabbitMQ nodes
5

SYNOPSIS

7     rabbitmqctl [-q] [-s] [-l] [-n node] [-t timeout] command
8                 [command_options]
9

DESCRIPTION

11     RabbitMQ is an open source multi-protocol messaging broker.
12
13     rabbitmqctl is a command line tool for managing a RabbitMQ server node.
14     It performs all actions by connecting to the target RabbitMQ node on a
15     dedicated CLI tool communication port and authenticating using a shared
16     secret (known as the cookie file).
17
18     Diagnostic information is displayed if connection failed, the target node
19     was not running, or rabbitmqctl could not authenticate to the target node
20     successfully.  To learn more, see the RabbitMQ CLI Tools guide:
21           https://www.rabbitmq.com/cli.html
22     and RabbitMQ Networking guide:
23           https://www.rabbitmq.com/networking.html
24

OPTIONS

26     -n node
27             Default node is "rabbit@target-hostname", where target-hostname
28             is the local host.  On a host named "myserver.example.com", the
29             node name will usually be "rabbit@myserver" (unless
30             RABBITMQ_NODENAME has been overridden).  The output of "hostname
31             -s" is usually the correct suffix to use after the "@" sign.  See
32             rabbitmq-server(8) for details of configuring a RabbitMQ node.
33
34     -q, --quiet
35             Quiet output mode is selected.  Informational messages are
36             reduced when quiet mode is in effect.
37
38     -s, --silent
39             Silent output mode is selected.  Informational messages are
40             reduced and table headers are suppressed when silent mode is in
41             effect.
42
43     --no-table-headers
44             Do not output headers for tabular data.
45
46     --dry-run
47             Do not run the command.  Only print information message.
48
49     -t timeout, --timeout timeout
50             Operation timeout in seconds.  Not all commands support timeouts.
51             Default is infinity.
52
53     -l, --longnames
54             Must be specified when the cluster is configured to use long
55             (FQDN) node names.  To learn more, see the RabbitMQ Clustering
56             guide:
57                   https://www.rabbitmq.com/clustering.html
58
59     --erlang-cookie cookie
60             Shared secret to use to authenticate to the target node.  Prefer
61             using a local file or the RABBITMQ_ERLANG_COOKIE environment
62             variable instead of specifying this option on the command line.
63             To learn more, see the RabbitMQ CLI Tools guide:
64                   https://www.rabbitmq.com/cli.html
65

COMMANDS

67     help [-l] [command_name]
68
69             Prints usage for all available commands.
70
71             -l, --list-commands
72                     List command usages only, without parameter explanation.
73
74             command_name
75                     Prints usage for the specified command.
76
77     version
78
79             Displays CLI tools version
80
81   Nodes
82     await_startup
83
84             Waits for the RabbitMQ application to start on the target node
85
86             For example, to wait for the RabbitMQ application to start:
87
88                   rabbitmqctl await_startup
89
90     reset
91
92             Returns a RabbitMQ node to its virgin state.
93
94             Removes the node from any cluster it belongs to, removes all data
95             from the management database, such as configured users and
96             vhosts, and deletes all persistent messages.
97
98             For reset and force_reset to succeed the RabbitMQ application
99             must have been stopped, e.g. with stop_app.
100
101             For example, to resets the RabbitMQ node:
102
103                   rabbitmqctl reset
104
105     rotate_logs
106
107             Instructs the RabbitMQ node to perform internal log rotation.
108
109             Log rotation is performed according to lager settings specified
110             in configuration file.
111
112             Note that there is no need to call this command in case of exter‐
113             nal log rotation (e.g. from logrotate(8)), because lager detects
114             renames and automatically reopens log files.
115
116             For example, this command starts internal log rotation process:
117
118                   rabbitmqctl rotate_logs
119
120             Rotation is performed asynchronously, so there is no guarantee
121             that it will be completed when this command returns.
122
123     shutdown
124
125             Shuts down the node, both RabbitMQ and its runtime.  The command
126             is blocking and will return after the runtime process exits.  If
127             RabbitMQ fails to stop, it will return a non-zero exit code.
128             This command infers the OS PID of the target node and therefore
129             can only be used to shut down nodes running on the same host (or
130             broadly speaking, in the same operating system, e.g. in the same
131             VM or container)
132
133             Unlike the stop command, the shutdown command:
134
135             ·   does not require a pid_file to wait for the runtime process
136                 to exit
137
138             ·   returns a non-zero exit code if RabbitMQ node is not running
139
140             For example, this will shut down a locally running RabbitMQ node
141             with default node name:
142
143                   rabbitmqctl shutdown
144
145     start_app
146
147             Starts the RabbitMQ application.
148
149             This command is typically run after performing other management
150             actions that required the RabbitMQ application to be stopped,
151             e.g. reset.
152
153             For example, to instruct the RabbitMQ node to start the RabbitMQ
154             application:
155
156                   rabbitmqctl start_app
157
158     stop [pid_file]
159
160             Stops the Erlang node on which RabbitMQ is running.  To restart
161             the node follow the instructions for "Running the Server" in the
162             installation:
163                   https://rabbitmq.com/download.html guide.
164
165             If a pid_file is specified, also waits for the process specified
166             there to terminate.  See the description of the wait command for
167             details on this file.
168
169             For example, to instruct the RabbitMQ node to terminate:
170
171                   rabbitmqctl stop
172
173     stop_app
174
175             Stops the RabbitMQ application, leaving the runtime (Erlang VM)
176             running.
177
178             This command is typically run prior to performing other manage‐
179             ment actions that require the RabbitMQ application to be stopped,
180             e.g. reset.
181
182             For example, to instruct the RabbitMQ node to stop the RabbitMQ
183             application:
184
185                   rabbitmqctl stop_app
186
187     wait pid_file, wait --pid pid
188
189             Waits for the RabbitMQ application to start.
190
191             This command will wait for the RabbitMQ application to start at
192             the node.  It will wait for the pid file to be created if pidfile
193             is specified, then for a process with a pid specified in the pid
194             file or the --pid argument, and then for the RabbitMQ application
195             to start in that process.  It will fail if the process terminates
196             without starting the RabbitMQ application.
197
198             If the specified pidfile is not created or erlang node is not
199             started within --timeout the command will fail.  Default timeout
200             is 10 seconds.
201
202             A suitable pid file is created by the rabbitmq-server(8) script.
203             By default this is located in the Mnesia directory.  Modify the
204             RABBITMQ_PID_FILE environment variable to change the location.
205
206             For example, this command will return when the RabbitMQ node has
207             started up:
208
209                   rabbitmqctl wait /var/run/rabbitmq/pid
210
211   Cluster management
212     await_online_nodes count
213
214             Waits for count nodes to join the cluster
215
216             For example, to wait for two RabbitMQ nodes to start:
217
218                   rabbitmqctl await_online_nodes 2
219
220     change_cluster_node_type type
221
222             Changes the type of the cluster node.
223
224             The type must be one of the following:
225             ·   disc
226             ·   ram
227
228             The node must be stopped for this operation to succeed, and when
229             turning a node into a RAM node the node must not be the only disc
230             node in the cluster.
231
232             For example, this command will turn a RAM node into a disc node:
233
234                   rabbitmqctl change_cluster_node_type disc
235
236     cluster_status
237
238             Displays all the nodes in the cluster grouped by node type,
239             together with the currently running nodes.
240
241             For example, this command displays the nodes in the cluster:
242
243                   rabbitmqctl cluster_status
244
245     force_boot
246
247             Ensures that the node will start next time, even if it was not
248             the last to shut down.
249
250             Normally when you shut down a RabbitMQ cluster altogether, the
251             first node you restart should be the last one to go down, since
252             it may have seen things happen that other nodes did not.  But
253             sometimes that's not possible: for instance if the entire cluster
254             loses power then all nodes may think they were not the last to
255             shut down.
256
257             In such a case you can invoke force_boot while the node is down.
258             This will tell the node to unconditionally start next time you
259             ask it to.  If any changes happened to the cluster after this
260             node shut down, they will be lost.
261
262             If the last node to go down is permanently lost then you should
263             use forget_cluster_node --offline in preference to this command,
264             as it will ensure that mirrored queues which were mastered on the
265             lost node get promoted.
266
267             For example, this will force the node not to wait for other nodes
268             next time it is started:
269
270                   rabbitmqctl force_boot
271
272     force_reset
273
274             Forcefully returns a RabbitMQ node to its virgin state.
275
276             The force_reset command differs from reset in that it resets the
277             node unconditionally, regardless of the current management data‐
278             base state and cluster configuration.  It should only be used as
279             a last resort if the database or cluster configuration has been
280             corrupted.
281
282             For reset and force_reset to succeed the RabbitMQ application
283             must have been stopped, e.g. with stop_app.
284
285             For example, to reset the RabbitMQ node:
286
287                   rabbitmqctl force_reset
288
289     forget_cluster_node [--offline]
290
291             --offline
292                     Enables node removal from an offline node.  This is only
293                     useful in the situation where all the nodes are offline
294                     and the last node to go down cannot be brought online,
295                     thus preventing the whole cluster from starting.  It
296                     should not be used in any other circumstances since it
297                     can lead to inconsistencies.
298
299             Removes a cluster node remotely.  The node that is being removed
300             must be offline, while the node we are removing from must be
301             online, except when using the --offline flag.
302
303             When using the --offline flag , rabbitmqctl will not attempt to
304             connect to a node as normal; instead it will temporarily become
305             the node in order to make the change.  This is useful if the node
306             cannot be started normally.  In this case the node will become
307             the canonical source for cluster metadata (e.g. which queues
308             exist), even if it was not before.  Therefore you should use this
309             command on the latest node to shut down if at all possible.
310
311             For example, this command will remove the node "rabbit@stringer"
312             from the node "hare@mcnulty":
313
314                   rabbitmqctl -n hare@mcnulty forget_cluster_node
315                   rabbit@stringer
316
317     join_cluster seed-node [--ram]
318
319             seed-node
320                     Existing cluster member (seed node) to cluster with.
321
322             --ram   If provided, the node will join the cluster as a RAM
323                     node.  RAM node use is discouraged. Use only if you
324                     understand why exactly you need to use them.
325
326             Instructs the node to become a member of the cluster that the
327             specified node is in.  Before clustering, the node is reset, so
328             be careful when using this command.  For this command to succeed
329             the RabbitMQ application must have been stopped, e.g. with
330             stop_app.
331
332             Cluster nodes can be of two types: disc or RAM.  Disc nodes
333             replicate data in RAM and on disc, thus providing redundancy in
334             the event of node failure and recovery from global events such as
335             power failure across all nodes.  RAM nodes replicate data in RAM
336             only (with the exception of queue contents, which can reside on
337             disc if the queue is persistent or too big to fit in memory) and
338             are mainly used for scalability.  RAM nodes are more performant
339             only when managing resources (e.g. adding/removing queues,
340             exchanges, or bindings).  A cluster must always have at least one
341             disc node, and usually should have more than one.
342
343             The node will be a disc node by default.  If you wish to create a
344             RAM node, provide the --ram flag.
345
346             After executing the join_cluster command, whenever the RabbitMQ
347             application is started on the current node it will attempt to
348             connect to the nodes that were in the cluster when the node went
349             down.
350
351             To leave a cluster, reset the node.  You can also remove nodes
352             remotely with the forget_cluster_node command.
353
354             For example, this command instructs the RabbitMQ node to join the
355             cluster that "hare@elena" is part of, as a ram node:
356
357                   rabbitmqctl join_cluster hare@elena --ram
358
359             To learn more, see the RabbitMQ Clustering guide:
360                   https://www.rabbitmq.com/clustering.html.
361
362     rename_cluster_node oldnode1 newnode1 [oldnode2 newnode2 ...]
363
364             Supports renaming of cluster nodes in the local database.
365
366             This subcommand causes rabbitmqctl to temporarily become the node
367             in order to make the change.  The local cluster node must there‐
368             fore be completely stopped; other nodes can be online or offline.
369
370             This subcommand takes an even number of arguments, in pairs rep‐
371             resenting the old and new names for nodes.  You must specify the
372             old and new names for this node and for any other nodes that are
373             stopped and being renamed at the same time.
374
375             It is possible to stop all nodes and rename them all simultane‐
376             ously (in which case old and new names for all nodes must be
377             given to every node) or stop and rename nodes one at a time (in
378             which case each node only needs to be told how its own name is
379             changing).
380
381             For example, this command will rename the node
382             "rabbit@misshelpful" to the node "rabbit@cordelia"
383
384                   rabbitmqctl rename_cluster_node rabbit@misshelpful
385                   rabbit@cordelia
386
387             Note that this command only changes the local database.  It may
388             also be necessary to rename the local database directories, and
389             to configure the new node name.  For example:
390
391             1.   Stop the node:
392
393                        rabbitmqctl stop rabbit@misshelpful
394
395             2.   Rename the node in the local database:
396
397                        rabbitmqctl rename_cluster_node rabbit@misshelpful
398                        rabbit@cordelia
399
400             3.   Rename the local database directories (note, you do not need
401                  to do this if you have set the RABBITMQ_MNESIA_DIR environ‐
402                  ment variable):
403
404                        mv \
405                          /var/lib/rabbitmq/mnesia/rabbit\@misshelpful \
406                          /var/lib/rabbitmq/mnesia/rabbit\@cordelia
407                        mv \
408                          /var/lib/rabbitmq/mnesia/rabbit\@misshelpful-rename \
409                          /var/lib/rabbitmq/mnesia/rabbit\@cordelia-rename
410                        mv \
411                          /var/lib/rabbitmq/mnesia/rabbit\@misshelpful-plugins-expand \
412                          /var/lib/rabbitmq/mnesia/rabbit\@cordelia-plugins-expand
413
414             4.   If node name is configured e.g. using
415                  /etc/rabbitmq/rabbitmq-env.conf it has also be updated
416                  there.
417
418             5.   Start the node when ready
419
420     update_cluster_nodes clusternode
421
422             clusternode
423                     The node to consult for up-to-date information.
424
425             Instructs an already clustered node to contact clusternode to
426             cluster when booting up.  This is different from join_cluster
427             since it does not join any cluster - it checks that the node is
428             already in a cluster with clusternode.
429
430             The need for this command is motivated by the fact that clusters
431             can change while a node is offline.  Consider a situation where
432             node rabbit@A and rabbit@B are clustered.  rabbit@A goes down,
433             rabbit@C clusters with rabbit@B, and then rabbit@B leaves the
434             cluster.  When rabbit@A starts back up, it'll try to contact
435             rabbit@B, but this will fail since rabbit@B is not in the cluster
436             anymore.  The following command will rename node rabbit@B to
437             rabbit@C on node rabbitA
438
439                   update_cluster_nodes -n rabbit@A rabbit@B rabbit@C
440
441             To learn more, see the RabbitMQ Clustering guide:
442                   https://www.rabbitmq.com/clustering.html
443
444   Replication
445     sync_queue [-p vhost] queue
446
447             queue   The name of the queue to synchronise.
448
449             Instructs a mirrored queue with unsynchronised mirrors (follower
450             replicas) to synchronise them.  The queue will block while syn‐
451             chronisation takes place (all publishers to and consumers using
452             the queue will block or temporarily see no activity).  This com‐
453             mand can only be used with mirrored queues.  To learn more, see
454             the RabbitMQ Mirroring guide:
455                   https://www.rabbitmq.com/ha.html
456
457             Note that queues with unsynchronised replicas and active con‐
458             sumers will become synchronised eventually (assuming that con‐
459             sumers make progress).  This command is primarily useful for
460             queues which do not have active consumers.
461
462     cancel_sync_queue [-p vhost] queue
463
464             queue   The name of the queue to cancel synchronisation for.
465
466             Instructs a synchronising mirrored queue to stop synchronising
467             itself.
468
469   User Management
470     Note that all user management commands rabbitmqctl only can manage users
471     in the internal RabbitMQ database.  Users from any alternative authenti‐
472     cation backends such as LDAP cannot be inspected or managed with those
473     commands.  rabbitmqctl.
474
475     add_user username password
476
477             username
478                     The name of the user to create.
479
480             password
481                     The password the created user will use to log in to the
482                     broker.
483
484             For example, this command instructs the RabbitMQ broker to create
485             a (non-administrative) user named "janeway" with (initial) pass‐
486             word "changeit":
487
488                   rabbitmqctl add_user janeway changeit
489
490     authenticate_user username password
491
492             username
493                     The name of the user.
494
495             password
496                     The password of the user.
497
498             For example, this command instructs the RabbitMQ broker to
499             authenticate the user named "janeway" with password "verifyit":
500
501                   rabbitmqctl authenticate_user janeway verifyit
502
503     change_password username newpassword
504
505             username
506                     The name of the user whose password is to be changed.
507
508             newpassword
509                     The new password for the user.
510
511             For example, this command instructs the RabbitMQ broker to change
512             the password for the user named "janeway" to "newpass":
513
514                   rabbitmqctl change_password janeway newpass
515
516     clear_password username
517
518             username
519                     The name of the user whose password is to be cleared.
520
521             For example, this command instructs the RabbitMQ broker to clear
522             the password for the user named "janeway":
523
524                   rabbitmqctl clear_password janeway
525
526             This user now cannot log in with a password (but may be able to
527             through e.g. SASL EXTERNAL if configured).
528
529     delete_user username
530
531             username
532                     The name of the user to delete.
533
534             For example, this command instructs the RabbitMQ broker to delete
535             the user named "janeway":
536
537                   rabbitmqctl delete_user janeway
538
539     list_users
540
541             Lists users.  Each result row will contain the user name followed
542             by a list of the tags set for that user.
543
544             For example, this command instructs the RabbitMQ broker to list
545             all users:
546
547                   rabbitmqctl list_users
548
549     set_user_tags username [tag ...]
550
551             username
552                     The name of the user whose tags are to be set.
553
554             tag     Zero, one or more tags to set.  Any existing tags will be
555                     removed.
556
557             For example, this command instructs the RabbitMQ broker to ensure
558             the user named "janeway" is an administrator:
559
560                   rabbitmqctl set_user_tags janeway administrator
561
562             This has no effect when the user logs in via AMQP, but can be
563             used to permit the user to manage users, virtual hosts and per‐
564             missions when the user logs in via some other means (for example
565             with the management plugin).
566
567             This command instructs the RabbitMQ broker to remove any tags
568             from the user named "janeway":
569
570                   rabbitmqctl set_user_tags janeway
571
572   Access control
573     clear_permissions [-p vhost] username
574
575             vhost   The name of the virtual host to which to deny the user
576                     access, defaulting to "/".
577
578             username
579                     The name of the user to deny access to the specified vir‐
580                     tual host.
581
582             Sets user permissions.
583
584             For example, this command instructs the RabbitMQ broker to deny
585             the user named "janeway" access to the virtual host called
586             "my-vhost":
587
588                   rabbitmqctl clear_permissions -p my-vhost janeway
589
590     clear_topic_permissions [-p vhost] username [exchange]
591
592             vhost   The name of the virtual host to which to clear the topic
593                     permissions, defaulting to "/".
594
595             username
596                     The name of the user to clear topic permissions to the
597                     specified virtual host.
598
599             exchange
600                     The name of the topic exchange to clear topic permis‐
601                     sions, defaulting to all the topic exchanges the given
602                     user has topic permissions for.
603
604             Clear user topic permissions.
605
606             For example, this command instructs the RabbitMQ broker to remove
607             topic permissions for user named "janeway" for the topic exchange
608             "amq.topic" in the virtual host called "my-vhost":
609
610                   rabbitmqctl clear_topic_permissions -p my-vhost janeway
611                   amq.topic
612
613     list_permissions [-p vhost]
614
615             vhost   The name of the virtual host for which to list the users
616                     that have been granted access to it, and their permis‐
617                     sions.  Defaults to "/".
618
619             Lists permissions in a virtual host.
620
621             For example, this command instructs the RabbitMQ broker to list
622             all the users which have been granted access to the virtual host
623             called "my-vhost", and the permissions they have for operations
624             on resources in that virtual host.  Note that an empty string
625             means no permissions granted:
626
627                   rabbitmqctl list_permissions -p my-vhost
628
629     list_topic_permissions [-p vhost]
630
631             vhost   The name of the virtual host for which to list the users
632                     topic permissions.  Defaults to "/".
633
634             Lists topic permissions in a virtual host.
635
636             For example, this command instructs the RabbitMQ broker to list
637             all the users which have been granted topic permissions in the
638             virtual host called "my-vhost:"
639
640                   rabbitmqctl list_topic_permissions -p my-vhost
641
642     list_user_permissions username
643
644             username
645                     The name of the user for which to list the permissions.
646
647             Lists user permissions.
648
649             For example, this command instructs the RabbitMQ broker to list
650             all the virtual hosts to which the user named "janeway" has been
651             granted access, and the permissions the user has for operations
652             on resources in these virtual hosts:
653
654                   rabbitmqctl list_user_permissions janeway
655
656     list_user_topic_permissions username
657
658             username
659                     The name of the user for which to list the topic permis‐
660                     sions.
661
662             Lists user topic permissions.
663
664             For example, this command instructs the RabbitMQ broker to list
665             all the virtual hosts to which the user named "janeway" has been
666             granted access, and the topic permissions the user has in these
667             virtual hosts:
668
669                   rabbitmqctl list_topic_user_permissions janeway
670
671     list_vhosts [vhostinfoitem ...]
672
673             Lists virtual hosts.
674
675             The vhostinfoitem parameter is used to indicate which virtual
676             host information items to include in the results.  The column
677             order in the results will match the order of the parameters.
678             vhostinfoitem can take any value from the list that follows:
679
680             name    The name of the virtual host with non-ASCII characters
681                     escaped as in C.
682
683             tracing
684                     Whether tracing is enabled for this virtual host.
685
686             If no vhostinfoitem are specified then the vhost name is dis‐
687             played.
688
689             For example, this command instructs the RabbitMQ broker to list
690             all virtual hosts:
691
692                   rabbitmqctl list_vhosts name tracing
693
694     set_permissions [-p vhost] user conf write read
695
696             vhost   The name of the virtual host to which to grant the user
697                     access, defaulting to "/".
698
699             user    The name of the user to grant access to the specified
700                     virtual host.
701
702             conf    A regular expression matching resource names for which
703                     the user is granted configure permissions.
704
705             write   A regular expression matching resource names for which
706                     the user is granted write permissions.
707
708             read    A regular expression matching resource names for which
709                     the user is granted read permissions.
710
711             Sets user permissions.
712
713             For example, this command instructs the RabbitMQ broker to grant
714             the user named "janeway" access to the virtual host called
715             "my-vhost", with configure permissions on all resources whose
716             names starts with "janeway-", and write and read permissions on
717             all resources:
718
719                   rabbitmqctl set_permissions -p my-vhost janeway
720                   "^janeway-.*" ".*" ".*"
721
722     set_topic_permissions [-p vhost] user exchange write read
723
724             vhost   The name of the virtual host to which to grant the user
725                     access, defaulting to "/".
726
727             user    The name of the user the permissions apply to in the tar‐
728                     get virtual host.
729
730             exchange
731                     The name of the topic exchange the authorisation check
732                     will be applied to.
733
734             write   A regular expression matching the routing key of the pub‐
735                     lished message.
736
737             read    A regular expression matching the routing key of the con‐
738                     sumed message.
739
740             Sets user topic permissions.
741
742             For example, this command instructs the RabbitMQ broker to let
743             the user named "janeway" publish and consume messages going
744             through the "amp.topic" exchange of the "my-vhost" virtual host
745             with a routing key starting with "janeway-":
746
747                   rabbitmqctl set_topic_permissions -p my-vhost janeway
748                   amq.topic "^janeway-.*" "^janeway-.*"
749
750             Topic permissions support variable expansion for the following
751             variables: username, vhost, and client_id. Note that client_id is
752             expanded only when using MQTT.  The previous example could be
753             made more generic by using "^{username}-.*":
754
755                   rabbitmqctl set_topic_permissions -p my-vhost janeway
756                   amq.topic "^{username}-.*" "^{username}-.*"
757
758   Monitoring, observability and health checks
759     environment
760
761             Displays the name and value of each variable in the application
762             environment for each running application.
763
764     list_bindings [-p vhost] [bindinginfoitem ...]
765
766             Returns binding details.  By default the bindings for the "/"
767             virtual host are returned.  The -p flag can be used to override
768             this default.
769
770             The bindinginfoitem parameter is used to indicate which binding
771             information items to include in the results.  The column order in
772             the results will match the order of the parameters.
773             bindinginfoitem can take any value from the list that follows:
774
775             source_name
776                     The name of the source of messages to which the binding
777                     is attached.  With non-ASCII characters escaped as in C.
778
779             source_kind
780                     The kind of the source of messages to which the binding
781                     is attached.  Currently always exchange.  With non-ASCII
782                     characters escaped as in C.
783
784             destination_name
785                     The name of the destination of messages to which the
786                     binding is attached.  With non-ASCII characters escaped
787                     as in C.
788
789             destination_kind
790                     The kind of the destination of messages to which the
791                     binding is attached.  With non-ASCII characters escaped
792                     as in C.
793
794             routing_key
795                     The binding's routing key, with non-ASCII characters
796                     escaped as in C.
797
798             arguments
799                     The binding's arguments.
800
801             If no bindinginfoitem are specified then all above items are dis‐
802             played.
803
804             For example, this command displays the exchange name and queue
805             name of the bindings in the virtual host named "my-vhost"
806
807                   rabbitmqctl list_bindings -p my-vhost exchange_name
808                   queue_name
809
810     list_channels [channelinfoitem ...]
811
812             Returns information on all current channels, the logical contain‐
813             ers executing most AMQP commands.  This includes channels that
814             are part of ordinary AMQP connections, and channels created by
815             various plug-ins and other extensions.
816
817             The channelinfoitem parameter is used to indicate which channel
818             information items to include in the results.  The column order in
819             the results will match the order of the parameters.
820             channelinfoitem can take any value from the list that follows:
821
822             pid     Id of the Erlang process associated with the connection.
823
824             connection
825                     Id of the Erlang process associated with the connection
826                     to which the channel belongs.
827
828             name    Readable name for the channel.
829
830             number  The number of the channel, which uniquely identifies it
831                     within a connection.
832
833             user    Username associated with the channel.
834
835             vhost   Virtual host in which the channel operates.
836
837             transactional
838                     True if the channel is in transactional mode, false oth‐
839                     erwise.
840
841             confirm
842                     True if the channel is in confirm mode, false otherwise.
843
844             consumer_count
845                     Number of logical AMQP consumers retrieving messages via
846                     the channel.
847
848             messages_unacknowledged
849                     Number of messages delivered via this channel but not yet
850                     acknowledged.
851
852             messages_uncommitted
853                     Number of messages received in an as yet uncommitted
854                     transaction.
855
856             acks_uncommitted
857                     Number of acknowledgements received in an as yet uncom‐
858                     mitted transaction.
859
860             messages_unconfirmed
861                     Number of published messages not yet confirmed.  On chan‐
862                     nels not in confirm mode, this remains 0.
863
864             prefetch_count
865                     QoS prefetch limit for new consumers, 0 if unlimited.
866
867             global_prefetch_count
868                     QoS prefetch limit for the entire channel, 0 if unlim‐
869                     ited.
870
871             If no channelinfoitem are specified then pid, user, con‐
872             sumer_count, and messages_unacknowledged are assumed.
873
874             For example, this command displays the connection process and
875             count of unacknowledged messages for each channel:
876
877                   rabbitmqctl list_channels connection
878                   messages_unacknowledged
879
880     list_ciphers
881
882             Lists cipher suites supported by encoding commands.
883
884             For example, this command instructs the RabbitMQ broker to list
885             all cipher suites supported by encoding commands:
886
887                   rabbitmqctl list_ciphers
888
889     list_connections [connectioninfoitem ...]
890
891             Returns TCP/IP connection statistics.
892
893             The connectioninfoitem parameter is used to indicate which con‐
894             nection information items to include in the results.  The column
895             order in the results will match the order of the parameters.
896             connectioninfoitem can take any value from the list that follows:
897
898             pid     Id of the Erlang process associated with the connection.
899
900             name    Readable name for the connection.
901
902             port    Server port.
903
904             host    Server hostname obtained via reverse DNS, or its IP
905                     address if reverse DNS failed or was disabled.
906
907             peer_port
908                     Peer port.
909
910             peer_host
911                     Peer hostname obtained via reverse DNS, or its IP address
912                     if reverse DNS failed or was not enabled.
913
914             ssl     Boolean indicating whether the connection is secured with
915                     SSL.
916
917             ssl_protocol
918                     SSL protocol (e.g. "tlsv1").
919
920             ssl_key_exchange
921                     SSL key exchange algorithm (e.g. "rsa").
922
923             ssl_cipher
924                     SSL cipher algorithm (e.g. "aes_256_cbc").
925
926             ssl_hash
927                     SSL hash function (e.g. "sha").
928
929             peer_cert_subject
930                     The subject of the peer's SSL certificate, in RFC4514
931                     form.
932
933             peer_cert_issuer
934                     The issuer of the peer's SSL certificate, in RFC4514
935                     form.
936
937             peer_cert_validity
938                     The period for which the peer's SSL certificate is valid.
939
940             state   Connection state; one of:
941                     ·   starting
942                     ·   tuning
943                     ·   opening
944                     ·   running
945                     ·   flow
946                     ·   blocking
947                     ·   blocked
948                     ·   closing
949                     ·   closed
950
951             channels
952                     Number of channels using the connection.
953
954             protocol
955                     Version of the AMQP protocol in use; currently one of:
956                     ·   {0,9,1}
957                     ·   {0,8,0}
958
959                     Note that if a client requests an AMQP 0-9 connection, we
960                     treat it as AMQP 0-9-1.
961
962             auth_mechanism
963                     SASL authentication mechanism used, such as "PLAIN".
964
965             user    Username associated with the connection.
966
967             vhost   Virtual host name with non-ASCII characters escaped as in
968                     C.
969
970             timeout
971                     Connection timeout / negotiated heartbeat interval, in
972                     seconds.
973
974             frame_max
975                     Maximum frame size (bytes).
976
977             channel_max
978                     Maximum number of channels on this connection.
979
980             client_properties
981                     Informational properties transmitted by the client during
982                     connection establishment.
983
984             recv_oct
985                     Octets received.
986
987             recv_cnt
988                     Packets received.
989
990             send_oct
991                     Octets send.
992
993             send_cnt
994                     Packets sent.
995
996             send_pend
997                     Send queue size.
998
999             connected_at
1000                     Date and time this connection was established, as time‐
1001                     stamp.
1002
1003             If no connectioninfoitem are specified then user, peer host, peer
1004             port, time since flow control and memory block state are dis‐
1005             played.
1006
1007             For example, this command displays the send queue size and server
1008             port for each connection:
1009
1010                   rabbitmqctl list_connections send_pend port
1011
1012     list_consumers [-p vhost]
1013
1014             Lists consumers, i.e. subscriptions to a queue´s message stream.
1015             Each line printed shows, separated by tab characters, the name of
1016             the queue subscribed to, the id of the channel process via which
1017             the subscription was created and is managed, the consumer tag
1018             which uniquely identifies the subscription within a channel, a
1019             boolean indicating whether acknowledgements are expected for mes‐
1020             sages delivered to this consumer, an integer indicating the
1021             prefetch limit (with 0 meaning "none"), and any arguments for
1022             this consumer.
1023
1024     list_exchanges [-p vhost] [exchangeinfoitem ...]
1025
1026             Returns exchange details.  Exchange details of the "/" virtual
1027             host are returned if the -p flag is absent.  The -p flag can be
1028             used to override this default.
1029
1030             The exchangeinfoitem parameter is used to indicate which exchange
1031             information items to include in the results.  The column order in
1032             the results will match the order of the parameters.
1033             exchangeinfoitem can take any value from the list that follows:
1034
1035             name    The name of the exchange with non-ASCII characters
1036                     escaped as in C.
1037
1038             type    The exchange type, such as:
1039                     ·   direct
1040                     ·   topic
1041                     ·   headers
1042                     ·   fanout
1043
1044             durable
1045                     Whether or not the exchange survives server restarts.
1046
1047             auto_delete
1048                     Whether the exchange will be deleted automatically when
1049                     no longer used.
1050
1051             internal
1052                     Whether the exchange is internal, i.e. cannot be directly
1053                     published to by a client.
1054
1055             arguments
1056                     Exchange arguments.
1057
1058             policy  Policy name for applying to the exchange.
1059
1060             If no exchangeinfoitem are specified then exchange name and type
1061             are displayed.
1062
1063             For example, this command displays the name and type for each
1064             exchange of the virtual host named "my-vhost":
1065
1066                   rabbitmqctl list_exchanges -p my-vhost name type
1067
1068     list_hashes
1069
1070             Lists hash functions supported by encoding commands.
1071
1072             For example, this command instructs the RabbitMQ broker to list
1073             all hash functions supported by encoding commands:
1074
1075                   rabbitmqctl list_hashes
1076
1077     list_queues [-p vhost] [--offline | --online | --local] [queueinfoitem
1078             ...]
1079
1080             Returns queue details.  Queue details of the "/" virtual host are
1081             returned if the -p flag is absent.  The -p flag can be used to
1082             override this default.
1083
1084             Displayed queues can be filtered by their status or location
1085             using one of the following mutually exclusive options:
1086
1087             --offline
1088                     List only those durable queues that are not currently
1089                     available (more specifically, their master node isn't).
1090
1091             --online
1092                     List queues that are currently available (their master
1093                     node is).
1094
1095             --local
1096                     List only those queues whose master process is located on
1097                     the current node.
1098
1099             The queueinfoitem parameter is used to indicate which queue
1100             information items to include in the results.  The column order in
1101             the results will match the order of the parameters.
1102             queueinfoitem can take any value from the list that follows:
1103
1104             name    The name of the queue with non-ASCII characters escaped
1105                     as in C.
1106
1107             durable
1108                     Whether or not the queue survives server restarts.
1109
1110             auto_delete
1111                     Whether the queue will be deleted automatically when no
1112                     longer used.
1113
1114             arguments
1115                     Queue arguments.
1116
1117             policy  Effective policy name for the queue.
1118
1119             pid     Erlang process identifier of the queue.
1120
1121             owner_pid
1122                     Id of the Erlang process of the connection which is the
1123                     exclusive owner of the queue.  Empty if the queue is non-
1124                     exclusive.
1125
1126             exclusive
1127                     True if queue is exclusive (i.e. has owner_pid), false
1128                     otherwise.
1129
1130             exclusive_consumer_pid
1131                     Id of the Erlang process representing the channel of the
1132                     exclusive consumer subscribed to this queue.  Empty if
1133                     there is no exclusive consumer.
1134
1135             exclusive_consumer_tag
1136                     Consumer tag of the exclusive consumer subscribed to this
1137                     queue.  Empty if there is no exclusive consumer.
1138
1139             messages_ready
1140                     Number of messages ready to be delivered to clients.
1141
1142             messages_unacknowledged
1143                     Number of messages delivered to clients but not yet
1144                     acknowledged.
1145
1146             messages
1147                     Sum of ready and unacknowledged messages (queue depth).
1148
1149             messages_ready_ram
1150                     Number of messages from messages_ready which are resident
1151                     in ram.
1152
1153             messages_unacknowledged_ram
1154                     Number of messages from messages_unacknowledged which are
1155                     resident in ram.
1156
1157             messages_ram
1158                     Total number of messages which are resident in ram.
1159
1160             messages_persistent
1161                     Total number of persistent messages in the queue (will
1162                     always be 0 for transient queues).
1163
1164             message_bytes
1165                     Sum of the size of all message bodies in the queue.  This
1166                     does not include the message properties (including head‐
1167                     ers) or any overhead.
1168
1169             message_bytes_ready
1170                     Like message_bytes but counting only those messages ready
1171                     to be delivered to clients.
1172
1173             message_bytes_unacknowledged
1174                     Like message_bytes but counting only those messages
1175                     delivered to clients but not yet acknowledged.
1176
1177             message_bytes_ram
1178                     Like message_bytes but counting only those messages which
1179                     are currently held in RAM.
1180
1181             message_bytes_persistent
1182                     Like message_bytes but counting only those messages which
1183                     are persistent.
1184
1185             head_message_timestamp
1186                     The timestamp property of the first message in the queue,
1187                     if present.  Timestamps of messages only appear when they
1188                     are in the paged-in state.
1189
1190             disk_reads
1191                     Total number of times messages have been read from disk
1192                     by this queue since it started.
1193
1194             disk_writes
1195                     Total number of times messages have been written to disk
1196                     by this queue since it started.
1197
1198             consumers
1199                     Number of consumers.
1200
1201             consumer_utilisation
1202                     Fraction of the time (between 0.0 and 1.0) that the queue
1203                     is able to immediately deliver messages to consumers.
1204                     This can be less than 1.0 if consumers are limited by
1205                     network congestion or prefetch count.
1206
1207             memory  Bytes of memory allocated by the runtime for the queue,
1208                     including stack, heap and internal structures.
1209
1210             slave_pids
1211                     If the queue is mirrored, this lists the IDs of the mir‐
1212                     rors (follower replicas).  To learn more, see the
1213                     RabbitMQ Mirroring guide:
1214                           https://www.rabbitmq.com/ha.html
1215
1216             synchronised_slave_pids
1217                     If the queue is mirrored, this gives the IDs of the mir‐
1218                     rors (follower replicas) which are synchronised with the
1219                     master (leader). To learn more, see the RabbitMQ
1220                     Mirroring guide:
1221                           https://www.rabbitmq.com/ha.html
1222
1223             state   The state of the queue.  Normally "running", but may be
1224                     "{syncing, message_count}" if the queue is synchronising.
1225
1226                     Queues which are located on cluster nodes that are cur‐
1227                     rently down will be shown with a status of "down" (and
1228                     most other queueinfoitem will be unavailable).
1229
1230             If no queueinfoitem are specified then queue name and depth are
1231             displayed.
1232
1233             For example, this command displays the depth and number of con‐
1234             sumers for each queue of the virtual host named "my-vhost"
1235
1236                   rabbitmqctl list_queues -p my-vhost messages consumers
1237
1238     list_unresponsive_queues [--local] [--queue_timeout milliseconds] [column
1239             ...] [--no-table-headers]
1240
1241             Tests queues to respond within timeout. Lists those which did not
1242             respond
1243
1244             For example, this command lists only those unresponsive queues
1245             whose master process is located on the current node.
1246                   rabbitmqctl list_unresponsive_queues --local name
1247
1248     node_health_check
1249
1250             Performs several health checks of the target node.
1251
1252             Verifies the rabbit application is running and alarms are not
1253             set, then checks that every queue and channel on the node can
1254             emit basic stats.
1255
1256             Example:
1257                   rabbitmqctl node_health_check -n rabbit@hostname
1258
1259     ping
1260
1261             Checks that the node OS process is up, registered with EPMD and
1262             CLI tools can authenticate with it
1263
1264             Example:
1265                   rabbitmqctl ping -n rabbit@hostname
1266
1267     report
1268
1269             Generate a server status report containing a concatenation of all
1270             server status information for support purposes.  The output
1271             should be redirected to a file when accompanying a support
1272             request.
1273
1274             For example, this command creates a server report which may be
1275             attached to a support request email:
1276
1277                   rabbitmqctl report > server_report.txt
1278
1279     schema_info [--no-table-headers] [column ...]
1280
1281             Lists schema database tables and their properties
1282
1283             For example, this command lists the table names and their active
1284             replicas:
1285
1286                   rabbitmqctl schema_info name active_replicas
1287
1288     status
1289
1290             Displays broker status information such as the running applica‐
1291             tions on the current Erlang node, RabbitMQ and Erlang versions,
1292             OS name, memory and file descriptor statistics.  (See the
1293             cluster_status command to find out which nodes are clustered and
1294             running.)
1295
1296             For example, this command displays information about the RabbitMQ
1297             broker:
1298
1299                   rabbitmqctl status
1300
1301   Runtime Parameters and Policies
1302     Certain features of RabbitMQ (such as the Federation plugin) are con‐
1303     trolled by dynamic, cluster-wide parameters. There are 2 kinds of parame‐
1304     ters: parameters scoped to a virtual host and global parameters.  Each
1305     vhost-scoped parameter consists of a component name, a name and a value.
1306     The component name and name are strings, and the value is a valid JSON
1307     document.  A global parameter consists of a name and value.  The name is
1308     a string and the value is an arbitrary Erlang data structure.  Parameters
1309     can be set, cleared and listed.  In general you should refer to the docu‐
1310     mentation for the feature in question to see how to set parameters.
1311
1312     Policies is a feature built on top of runtime parameters.  Policies are
1313     used to control and modify the behaviour of queues and exchanges on a
1314     cluster-wide basis.  Policies apply within a given vhost, and consist of
1315     a name, pattern, definition and an optional priority.  Policies can be
1316     set, cleared and listed.
1317
1318     clear_global_parameter name
1319
1320             Clears a global runtime parameter.  This is similar to
1321             clear_parameter but the key-value pair isn't tied to a virtual
1322             host.
1323
1324             name    The name of the global runtime parameter being cleared.
1325
1326             For example, this command clears the global runtime parameter
1327             "mqtt_default_vhosts":
1328
1329                   rabbitmqctl clear_global_parameter mqtt_default_vhosts
1330
1331     clear_parameter [-p vhost] component_name key
1332
1333             Clears a parameter.
1334
1335             component_name
1336                     The name of the component for which the parameter is
1337                     being cleared.
1338
1339             name    The name of the parameter being cleared.
1340
1341             For example, this command clears the parameter "node01" for the
1342             "federation-upstream" component in the default virtual host:
1343
1344                   rabbitmqctl clear_parameter federation-upstream node01
1345
1346     list_global_parameters
1347
1348             Lists all global runtime parameters.  This is similar to
1349             list_parameters but the global runtime parameters are not tied to
1350             any virtual host.
1351
1352             For example, this command lists all global parameters:
1353
1354                   rabbitmqctl list_global_parameters
1355
1356     list_parameters [-p vhost]
1357
1358             Lists all parameters for a virtual host.
1359
1360             For example, this command lists all parameters in the default
1361             virtual host:
1362
1363                   rabbitmqctl list_parameters
1364
1365     set_global_parameter name value
1366
1367             Sets a global runtime parameter.  This is similar to
1368             set_parameter but the key-value pair isn't tied to a virtual
1369             host.
1370
1371             name    The name of the global runtime parameter being set.
1372
1373             value   The value for the global runtime parameter, as a JSON
1374                     term.  In most shells you are very likely to need to
1375                     quote this.
1376
1377             For example, this command sets the global runtime parameter
1378             "mqtt_default_vhosts" to the JSON term {"O=client,CN=guest":"/"}:
1379
1380                   rabbitmqctl set_global_parameter mqtt_default_vhosts
1381                   '{"O=client,CN=guest":"/"}'
1382
1383     set_parameter [-p vhost] component_name name value
1384
1385             Sets a parameter.
1386
1387             component_name
1388                     The name of the component for which the parameter is
1389                     being set.
1390
1391             name    The name of the parameter being set.
1392
1393             value   The value for the parameter, as a JSON term.  In most
1394                     shells you are very likely to need to quote this.
1395
1396             For example, this command sets the parameter "node01" for the
1397             "federation-upstream" component in the default virtual host to
1398             the following JSON "guest":
1399
1400                   rabbitmqctl set_parameter federation-upstream node01
1401                   '{"uri":"amqp://user:password@server/%2F","ack-mode":"on-publish"}'
1402
1403     list_policies [-p vhost]
1404
1405             Lists all policies for a virtual host.
1406
1407             For example, this command lists all policies in the default vir‐
1408             tual host:
1409
1410                   rabbitmqctl list_policies
1411
1412     set_operator_policy [-p vhost] [--priority priority] [--apply-to
1413             apply-to] name pattern definition
1414
1415             Sets an operator policy that overrides a subset of arguments in
1416             user policies.  Arguments are identical to those of set_policy.
1417
1418             Supported arguments are:
1419             ·   expires
1420             ·   message-ttl
1421             ·   max-length
1422             ·   max-length-bytes
1423
1424     set_policy [-p vhost] [--priority priority] [--apply-to apply-to] name
1425             pattern definition
1426
1427             Sets a policy.
1428
1429             name    The name of the policy.
1430
1431             pattern
1432                     The regular expression, which when matches on a given
1433                     resources causes the policy to apply.
1434
1435             definition
1436                     The definition of the policy, as a JSON term.  In most
1437                     shells you are very likely to need to quote this.
1438
1439             priority
1440                     The priority of the policy as an integer.  Higher numbers
1441                     indicate greater precedence.  The default is 0.
1442
1443             apply-to
1444                     Which types of object this policy should apply to.  Pos‐
1445                     sible values are:
1446                     ·   queues
1447                     ·   exchanges
1448                     ·   all
1449                     The default is all ..
1450
1451             For example, this command sets the policy "federate-me" in the
1452             default virtual host so that built-in exchanges are federated:
1453
1454                   rabbitmqctl set_policy federate-me ^amq.
1455                   '{"federation-upstream-set":"all"}'
1456
1457     clear_policy [-p vhost] name
1458
1459             Clears a policy.
1460
1461             name    The name of the policy being cleared.
1462
1463             For example, this command clears the "federate-me" policy in the
1464             default virtual host:
1465
1466                   rabbitmqctl clear_policy federate-me
1467
1468     clear_operator_policy [-p vhost] name
1469
1470             Clears an operator policy.  Arguments are identical to those of
1471             clear_policy.
1472
1473     list_operator_policies [-p vhost]
1474
1475             Lists operator policy overrides for a virtual host.  Arguments
1476             are identical to those of list_policies.
1477
1478   Virtual hosts
1479     Note that rabbitmqctl manages the RabbitMQ internal user database.  Per‐
1480     missions for users from any alternative authorisation backend will not be
1481     visible to rabbitmqctl.
1482
1483     add_vhost vhost
1484
1485             vhost   The name of the virtual host entry to create.
1486
1487             Creates a virtual host.
1488
1489             For example, this command instructs the RabbitMQ broker to create
1490             a new virtual host called "test":
1491
1492                   rabbitmqctl add_vhost test
1493
1494     clear_vhost_limits [-p vhost]
1495
1496             Clears virtual host limits.
1497
1498             For example, this command clears vhost limits in vhost "qa_env":
1499
1500                   rabbitmqctl clear_vhost_limits -p qa_env
1501
1502     delete_vhost vhost
1503
1504             vhost   The name of the virtual host entry to delete.
1505
1506             Deletes a virtual host.
1507
1508             Deleting a virtual host deletes all its exchanges, queues, bind‐
1509             ings, user permissions, parameters and policies.
1510
1511             For example, this command instructs the RabbitMQ broker to delete
1512             the virtual host called "test":
1513
1514                   rabbitmqctl delete_vhost a-vhost
1515
1516     list_vhost_limits [-p vhost] [--global] [--no-table-headers]
1517
1518             Displays configured virtual host limits.
1519
1520             --global
1521                     Show limits for all vhosts.  Suppresses the -p parameter.
1522
1523     restart_vhost vhost
1524
1525             vhost   The name of the virtual host entry to restart.
1526
1527             Restarts a failed vhost data stores and queues.
1528
1529             For example, this command instructs the RabbitMQ broker to
1530             restart a virtual host called "test":
1531
1532                   rabbitmqctl restart_vhost test
1533
1534     set_vhost_limits [-p vhost] definition
1535
1536             Sets virtual host limits.
1537
1538             definition
1539                     The definition of the limits, as a JSON term.  In most
1540                     shells you are very likely to need to quote this.
1541
1542                     Recognised limits are:
1543                     ·   max-connections
1544                     ·   max-queues
1545
1546                     Use a negative value to specify "no limit".
1547
1548             For example, this command limits the max number of concurrent
1549             connections in vhost "qa_env" to 64:
1550
1551                   rabbitmqctl set_vhost_limits -p qa_env '{"max-connections":
1552                   64}'
1553
1554             This command limits the max number of queues in vhost "qa_env" to
1555             256:
1556
1557                   rabbitmqctl set_vhost_limits -p qa_env '{"max-queues":
1558                   256}'
1559
1560             This command clears the max number of connections limit in vhost
1561             "qa_env":
1562
1563                   rabbitmqctl set_vhost_limits -p qa_env '{"max-connections":
1564                   -1}'
1565
1566             This command disables client connections in vhost "qa_env":
1567
1568                   rabbitmqctl set_vhost_limits -p qa_env '{"max-connections":
1569                   0}'
1570
1571     trace_off [-p vhost]
1572
1573             vhost   The name of the virtual host for which to stop tracing.
1574
1575             Stops tracing.
1576
1577     trace_on [-p vhost]
1578
1579             vhost   The name of the virtual host for which to start tracing.
1580
1581             Starts tracing.  Note that the trace state is not persistent; it
1582             will revert to being off if the node is restarted.
1583
1584   Configuration
1585     decode value passphrase [--cipher cipher] [--hash hash] [--iterations
1586             iterations]
1587
1588             value passphrase
1589                     Value to decrypt (as produced by the encode command) and
1590                     passphrase.
1591
1592                     For example:
1593
1594                           rabbitmqctl decode '{encrypted, <<"...">>}'
1595                           mypassphrase
1596
1597             --cipher cipher --hash hash --iterations iterations
1598                     Options to specify the decryption settings.  They can be
1599                     used independently.
1600
1601                     For example:
1602
1603                           rabbitmqctl decode --cipher blowfish_cfb64 --hash
1604                           sha256 --iterations 10000 '{encrypted,<<"...">>}
1605                           mypassphrase
1606
1607     encode value passphrase [--cipher cipher] [--hash hash] [--iterations
1608             iterations]
1609
1610             value passphrase
1611                     Value to encrypt and passphrase.
1612
1613                     For example:
1614
1615                           rabbitmqctl encode '<<"guest">>' mypassphrase
1616
1617             --cipher cipher --hash hash --iterations iterations
1618                     Options to specify the encryption settings.  They can be
1619                     used independently.
1620
1621                     For example:
1622
1623                           rabbitmqctl encode --cipher blowfish_cfb64 --hash
1624                           sha256 --iterations 10000 '<<"guest">>'
1625                           mypassphrase
1626
1627     set_cluster_name name
1628
1629             Sets the cluster name to name.  The cluster name is announced to
1630             clients on connection, and used by the federation and shovel
1631             plugins to record where a message has been.  The cluster name is
1632             by default derived from the hostname of the first node in the
1633             cluster, but can be changed.
1634
1635             For example, this sets the cluster name to "london":
1636
1637                   rabbitmqctl set_cluster_name london
1638
1639     set_disk_free_limit disk_limit
1640
1641             disk_limit
1642                     Lower bound limit as an integer in bytes or a string with
1643                     memory unit symbols (see vm_memory_high_watermark), e.g.
1644                     512M or 1G.  Once free disk space reaches the limit, a
1645                     disk alarm will be set.
1646
1647     set_disk_free_limit mem_relative fraction
1648
1649             fraction
1650                     Limit relative to the total amount available RAM as a
1651                     non-negative floating point number.  Values lower than
1652                     1.0 can be dangerous and should be used carefully.
1653
1654     set_log_level [log_level]
1655
1656             Sets log level in the running node
1657
1658             Supported type values are:
1659             ·   debug
1660             ·   info
1661             ·   warning
1662             ·   error
1663             ·   none
1664
1665             Example:
1666                   rabbitmqctl log_level debug
1667
1668     set_vm_memory_high_watermark fraction
1669
1670             fraction
1671                     The new memory threshold fraction at which flow control
1672                     is triggered, as a floating point number greater than or
1673                     equal to 0.
1674
1675     set_vm_memory_high_watermark [absolute] memory_limit
1676
1677             memory_limit
1678                     The new memory limit at which flow control is triggered,
1679                     expressed in bytes as an integer number greater than or
1680                     equal to 0 or as a string with memory unit symbol(e.g.
1681                     512M or 1G).  Available unit symbols are:
1682
1683                     k, kiB  kibibytes (2^10 bytes)
1684
1685                     M, MiB  mebibytes (2^20 bytes)
1686
1687                     G, GiB  gibibytes (2^30 bytes)
1688
1689                     kB      kilobytes (10^3 bytes)
1690
1691                     MB      megabytes (10^6 bytes)
1692
1693                     GB      gigabytes (10^9 bytes)
1694
1695   Feature flags
1696     enable_feature_flag feature_flag
1697
1698             Enables a feature flag on the target node.
1699
1700             Example:
1701                   rabbitmqctl enable_feature_flag quorum_queue
1702
1703     list_feature_flags [column ...]
1704
1705             Lists feature flags
1706
1707             Supported column values are:
1708             ·   name
1709             ·   state
1710             ·   stability
1711             ·   provided_by
1712             ·   desc
1713             ·   doc_url
1714
1715             Example:
1716                   rabbitmqctl list_feature_flags name state
1717
1718   Connection Operations
1719     close_all_connections [-p vhost] [--global] [--per-connection-delay
1720             delay] [--limit limit] explanation
1721
1722             -p vhost
1723                     The name of the virtual host for which connections should
1724                     be closed.  Ignored when --global is specified.
1725
1726             --global
1727                     If connections should be close for all vhosts.  Overrides
1728                     -p
1729
1730             --per-connection-delay delay
1731                     Time in milliseconds to wait after each connection clos‐
1732                     ing.
1733
1734             --limit limit
1735                     Number of connection to close.  Only works per vhost.
1736                     Ignored when --global is specified.
1737
1738             explanation
1739                     Explanation string.
1740
1741             Instructs the broker to close all connections for the specified
1742             vhost or entire RabbitMQ node.
1743
1744             For example, this command instructs the RabbitMQ broker to close
1745             10 connections on "qa_env" vhost, passing the explanation "Please
1746             close":
1747
1748                   rabbitmqctl close_all_connections -p qa_env --limit 10
1749                   'Please close'
1750
1751             This command instructs broker to close all connections to the
1752             node:
1753
1754                   rabbitmqctl close_all_connections --global
1755
1756
1757     close_connection connectionpid explanation
1758
1759             connectionpid
1760                     Id of the Erlang process associated with the connection
1761                     to close.
1762
1763             explanation
1764                     Explanation string.
1765
1766             Instructs the broker to close the connection associated with the
1767             Erlang process id connectionpid (see also the list_connections
1768             command), passing the explanation string to the connected client
1769             as part of the AMQP connection shutdown protocol.
1770
1771             For example, this command instructs the RabbitMQ broker to close
1772             the connection associated with the Erlang process id
1773             "<rabbit@tanto.4262.0>", passing the explanation "go away" to the
1774             connected client:
1775
1776                   rabbitmqctl close_connection "<rabbit@tanto.4262.0>" "go
1777                   away"
1778
1779   Misc
1780     eval expression
1781
1782             Evaluates an Erlang expression on the target node
1783
1784     hipe_compile directory
1785
1786             Performs HiPE-compilation and caches resulting .beam-files in the
1787             given directory.
1788
1789             Parent directories are created if necessary.  Any existing .beam
1790             files from the directory are automatically deleted prior to com‐
1791             pilation.
1792
1793             To use this precompiled files, you should set
1794             RABBITMQ_SERVER_CODE_PATH environment variable to directory spec‐
1795             ified in hipe_compile invocation.
1796
1797             For example, to HiPE-compile modules and store them to
1798             /tmp/rabbit-hipe/ebin directory:
1799
1800                   rabbitmqctl hipe_compile /tmp/rabbit-hipe/ebin
1801
1802   Queue Operations
1803     delete_queue queue_name [--if-empty | -e] [--if-unused | -u]
1804
1805             queue_name
1806                     The name of the queue to delete.
1807
1808             --if-empty
1809                     Delete the queue if it is empty (has no messages ready
1810                     for delivery)
1811
1812             --if-unused
1813                     Delete the queue only if it has no consumers
1814
1815             Deletes a queue.
1816
1817     purge_queue [-p vhost] queue
1818
1819             queue   The name of the queue to purge.
1820
1821             Purges a queue (removes all messages in it).
1822

PLUGIN COMMANDS

1824     RabbitMQ plugins can extend rabbitmqctl tool to add new commands when
1825     enabled.  Currently available commands can be found in rabbitmqctl help
1826     output.  Following commands are added by RabbitMQ plugins, available in
1827     default distribution:
1828
1829   Shovel plugin
1830     shovel_status
1831             Prints a list of configured Shovels
1832
1833     delete_shovel [-p vhost] name
1834             Instructs the RabbitMQ node to delete the configured shovel by
1835             name.
1836
1837   Federation plugin
1838     federation_status [--only-down]
1839             Prints a list of federation links.
1840
1841             --only-down
1842                     Only list federation links which are not running.
1843
1844     restart_federation_link link_id
1845             Instructs the RabbitMQ node to restart the federation link with
1846             specified link_id.
1847
1848   AMQP 1.0 plugin
1849     list_amqp10_connections [amqp10_connectioninfoitem ...]
1850             Similar to the list_connections command, but returns fields which
1851             make sense for AMQP-1.0 connections.  amqp10_connectioninfoitem
1852             parameter is used to indicate which connection information items
1853             to include in the results.  The column order in the results will
1854             match the order of the parameters.  amqp10_connectioninfoitem can
1855             take any value from the list that follows:
1856
1857             pid     Id of the Erlang process associated with the connection.
1858
1859             auth_mechanism
1860                     SASL authentication mechanism used, such as "PLAIN".
1861
1862             host    Server hostname obtained via reverse DNS, or its IP
1863                     address if reverse DNS failed or was disabled.
1864
1865             frame_max
1866                     Maximum frame size (bytes).
1867
1868             timeout
1869                     Connection timeout / negotiated heartbeat interval, in
1870                     seconds.
1871
1872             user    Username associated with the connection.
1873
1874             state   Connection state; one of:
1875                     ·   starting
1876                     ·   waiting_amqp0100
1877                     ·   securing
1878                     ·   running
1879                     ·   blocking
1880                     ·   blocked
1881                     ·   closing
1882                     ·   closed
1883
1884             recv_oct
1885                     Octets received.
1886
1887             recv_cnt
1888                     Packets received.
1889
1890             send_oct
1891                     Octets send.
1892
1893             send_cnt
1894                     Packets sent.
1895
1896             ssl     Boolean indicating whether the connection is secured with
1897                     SSL.
1898
1899             ssl_protocol
1900                     SSL protocol (e.g. "tlsv1").
1901
1902             ssl_key_exchange
1903                     SSL key exchange algorithm (e.g. "rsa").
1904
1905             ssl_cipher
1906                     SSL cipher algorithm (e.g. "aes_256_cbc").
1907
1908             ssl_hash
1909                     SSL hash function (e.g. "sha").
1910
1911             peer_cert_subject
1912                     The subject of the peer's SSL certificate, in RFC4514
1913                     form.
1914
1915             peer_cert_issuer
1916                     The issuer of the peer's SSL certificate, in RFC4514
1917                     form.
1918
1919             peer_cert_validity
1920                     The period for which the peer's SSL certificate is valid.
1921
1922             node    The node name of the RabbitMQ node to which connection is
1923                     established.
1924
1925   MQTT plugin
1926     list_mqtt_connections [mqtt_connectioninfoitem]
1927             Similar to the list_connections command, but returns fields which
1928             make sense for MQTT connections.  mqtt_connectioninfoitem parame‐
1929             ter is used to indicate which connection information items to
1930             include in the results.  The column order in the results will
1931             match the order of the parameters.  mqtt_connectioninfoitem can
1932             take any value from the list that follows:
1933
1934             host    Server hostname obtained via reverse DNS, or its IP
1935                     address if reverse DNS failed or was disabled.
1936
1937             port    Server port.
1938
1939             peer_host
1940                     Peer hostname obtained via reverse DNS, or its IP address
1941                     if reverse DNS failed or was not enabled.
1942
1943             peer_port
1944                     Peer port.
1945
1946             protocol
1947                     MQTT protocol version, which can be on of the following:
1948                     ·   {'MQTT', N/A}
1949                     ·   {'MQTT', 3.1.0}
1950                     ·   {'MQTT', 3.1.1}
1951
1952             channels
1953                     Number of channels using the connection.
1954
1955             channel_max
1956                     Maximum number of channels on this connection.
1957
1958             frame_max
1959                     Maximum frame size (bytes).
1960
1961             client_properties
1962                     Informational properties transmitted by the client during
1963                     connection establishment.
1964
1965             ssl     Boolean indicating whether the connection is secured with
1966                     SSL.
1967
1968             ssl_protocol
1969                     SSL protocol (e.g. "tlsv1").
1970
1971             ssl_key_exchange
1972                     SSL key exchange algorithm (e.g. "rsa").
1973
1974             ssl_cipher
1975                     SSL cipher algorithm (e.g. "aes_256_cbc").
1976
1977             ssl_hash
1978                     SSL hash function (e.g. "sha").
1979
1980             conn_name
1981                     Readable name for the connection.
1982
1983             connection_state
1984                     Connection state; one of:
1985                     ·   starting
1986                     ·   running
1987                     ·   blocked
1988
1989             connection
1990                     Id of the Erlang process associated with the internal
1991                     amqp direct connection.
1992
1993             consumer_tags
1994                     A tuple of consumer tags for QOS0 and QOS1.
1995
1996             message_id
1997                     The last Packet ID sent in a control message.
1998
1999             client_id
2000                     MQTT client identifier for the connection.
2001
2002             clean_sess
2003                     MQTT clean session flag.
2004
2005             will_msg
2006                     MQTT Will message sent in CONNECT frame.
2007
2008             exchange
2009                     Exchange to route MQTT messages configured in rab‐
2010                     bitmq_mqtt application environment.
2011
2012             ssl_login_name
2013                     SSL peer cert auth name
2014
2015             retainer_pid
2016                     Id of the Erlang process associated with retain storage
2017                     for the connection.
2018
2019             user    Username associated with the connection.
2020
2021             vhost   Virtual host name with non-ASCII characters escaped as in
2022                     C.
2023
2024   STOMP plugin
2025     list_stomp_connections [stomp_connectioninfoitem]
2026             Similar to the list_connections command, but returns fields which
2027             make sense for STOMP connections.  stomp_connectioninfoitem
2028             parameter is used to indicate which connection information items
2029             to include in the results.  The column order in the results will
2030             match the order of the parameters.  stomp_connectioninfoitem can
2031             take any value from the list that follows:
2032
2033             conn_name
2034                     Readable name for the connection.
2035
2036             connection
2037                     Id of the Erlang process associated with the internal
2038                     amqp direct connection.
2039
2040             connection_state
2041                     Connection state; one of:
2042                     ·   running
2043                     ·   blocking
2044                     ·   blocked
2045
2046             session_id
2047                     STOMP protocol session identifier
2048
2049             channel
2050                     AMQP channel associated with the connection
2051
2052             version
2053                     Negotiated STOMP protocol version for the connection.
2054
2055             implicit_connect
2056                     Indicates if the connection was established using
2057                     implicit connect (without CONNECT frame)
2058
2059             auth_login
2060                     Effective username for the connection.
2061
2062             auth_mechanism
2063                     STOMP authorization mechanism.  Can be one of:
2064                     ·   config
2065                     ·   ssl
2066                     ·   stomp_headers
2067
2068             port    Server port.
2069
2070             host    Server hostname obtained via reverse DNS, or its IP
2071                     address if reverse DNS failed or was not enabled.
2072
2073             peer_port
2074                     Peer port.
2075
2076             peer_host
2077                     Peer hostname obtained via reverse DNS, or its IP address
2078                     if reverse DNS failed or was not enabled.
2079
2080             protocol
2081                     STOMP protocol version, which can be on of the following:
2082                     ·   {'STOMP', 0}
2083                     ·   {'STOMP', 1}
2084                     ·   {'STOMP', 2}
2085
2086             channels
2087                     Number of channels using the connection.
2088
2089             channel_max
2090                     Maximum number of channels on this connection.
2091
2092             frame_max
2093                     Maximum frame size (bytes).
2094
2095             client_properties
2096                     Informational properties transmitted by the client during
2097                     connection
2098
2099             ssl     Boolean indicating whether the connection is secured with
2100                     SSL.
2101
2102             ssl_protocol
2103                     TLS protocol (e.g. "tlsv1").
2104
2105             ssl_key_exchange
2106                     TLS key exchange algorithm (e.g. "rsa").
2107
2108             ssl_cipher
2109                     TLS cipher algorithm (e.g. "aes_256_cbc").
2110
2111             ssl_hash
2112                     SSL hash function (e.g. "sha").
2113
2114   Management agent plugin
2115     reset_stats_db [--all]
2116             Reset management stats database for the RabbitMQ node.
2117
2118             --all   Reset stats database for all nodes in the cluster.
2119

SEE ALSO

2121     rabbitmq-diagnostics(8), rabbitmq-plugins(8), rabbitmq-server(8),
2122     rabbitmq-queues(8), rabbitmq-upgrade(8), rabbitmq-service(8),
2123     rabbitmq-env.conf(5), rabbitmq-echopid(8)
2124

AUTHOR

2126     The RabbitMQ Team <info@rabbitmq.com>
2127
2128RabbitMQ Server               September 28, 2019               RabbitMQ Server
Impressum