RabbitMQ3.8.9 CLI 管理工具 rabbitmqadmin实操

版本 

[root@localhost ~]# rabbitmqctl version
3.8.9

一般情况下,我们会使用 rabbitmq_management 插件,通过 Web UI 的方式来监控和操作 RabbitMQ(端口 15672),但有时候命令的方式会更加方便一些,RabbitMQ 提供了 CLI 管理工具 rabbitmqadmin ,其实就是基于 RabbitMQ 的 HTTP API,用 Python 写的一个脚本。

另外,除了 rabbitmqadmin ,有个人也写了一个 rabbitmq-dump-queue 脚本,用于抓取 Queue 队列,用文件进行存储,但使用下来,感觉还是官方的 rabbitmqadmin 比较好些。

rabbitmqadmin 提供了下面功能:

  • 列出 exchanges, queues, bindings, vhosts, users, permissions, connections and channels。
  • 创建和删除 exchanges, queues, bindings, vhosts, users and permissions。
  • 发布和获取消息,以及消息详情。
  • 关闭连接和清空队列。
  • 导入导出配置。

使用 rabbitmqadmin 的时候,我们需要理解 RabbitMQ 的基本概念,先回顾一下:

RabbitMQ 概念:

概念详解
Exchange消息交换机,它指定消息按什么规则,路由到哪个队列
Queue消息队列,每个消息都会被投入到一个或多个队列
Binding绑定,它的作用就是把 exchange 和 queue 按照路由规则绑定起来
Routing Key路由关键字,exchange 根据这个关键字进行消息投递
Vhost虚拟主机,可以开设多个 vhost,用作不同用户的权限分离
Producer消息生产者,就是投递消息的程序
Consumer消息消费者,就是接受消息的程序
Channel消息通道,在客户端的每个连接里,可建立多个 channel,每个 channel 代表一个会话任务

RabbitMQ 流程:

RabbitMQ 投递过程:

  • 1. 客户端连接到消息队列服务器,打开一个 channel。
  • 2. 客户端声明一个 exchange,并设置相关属性。
  • 3. 客户端声明一个 queue,并设置相关属性。
  • 4. 客户端使用 routing key,在 exchange 和 queue 之间建立好绑定关系。
  • 5. 客户端投递消息到 exchange。
  • 6. 客户端从指定的 queue 中消费信息。

接下来,我们就用 rabbitmqadmin ,来演示上面 RabbitMQ 投递过程。

如果我们安装了rabbitmq_management插件,可以打开http://192.168.1.36:15672/cli/页面,下载 rabbitmqadmin。

或者直接进行下载:

[root@localhost~]# wget http://192.168.1.36:15672/cli/rabbitmqadmin

然后移到PATH目录,并赋予权限:

[root@localhost ~]# mv rabbitmqadmin /usr/local/bin
[root@localhost ~]# sudo chmod 777 /usr/local/bin/rabbitmqadmin

查看 rabbitmqadmin 命令:

[root@node1 ~]# rabbitmqadmin -help
Usage
=====
  rabbitmqadmin [options] subcommand
...

1.交换机默认的方式(使用的默认 Exchange 是空字符串(系统中的第一个 Exchange,Binding 中的 source 部分),并且这个默认的 Exchange 是direct类型(也就是一对一模式,精确匹配),这种隐式调用确保了消息准确投递)

1.1 创建一个test队列:

[root@localhost ~]# rabbitmqadmin declare queue name=test durable=true
queue declared
[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 0        |
+------+----------+

[root@localhost ~]# rabbitmqadmin list bindings
+--------+-------------+-------------+
| source | destination | routing_key |
+--------+-------------+-------------+
|        | test        | test        |
+--------+-------------+-------------+

需要注意:没有之情vhost默认用"/"。durable=true表示持久化,如果没有创建 Exchange,RabbitMQ 会使用默认的 Exchange,以及创建一个 Binding,这也就是为什么下面发布消息,可以成功的原因。

1.2 发布一条消息: 因为交换机默认是direct进准匹配,所以routing_key=test。下面说明有一条消息了。

[root@localhost ~]# rabbitmqadmin publish routing_key=test payload="hello world"
Message published
[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 1        |
+------+----------+

1.3 消费一条消息(查看消息内容): rabbitmqadmin get 可以指定ackmode模式

[root@localhost ~]# rabbitmqadmin get queue=test 
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |   payload   | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| test        |          | 0             | hello world | 11            | string           |            | False       |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+

在服务器端的客户端页面从队列中获取消息是一个危险的动作,生产环境一定要了解业务之后再做操

Act Mode

  • Nack message requeue true

        获取消息,但是不做ack应答确认,消息重新入队【队列是先进先出,拿到了消息这个消息就出队列了,现在这句话就是拿到了消息,然后又重新将消息给丢到队列里面去,其他人还可以获取到】

  • Ack message requeue false

        获取消息,应答确认,消息不重新入队,将会从队列中删除

  • reject requeue true

        拒绝获取消息,消息重新入队

  • reject requeue false

        拒绝获取消息,消息不重新入队,将会被删除

Encoding
        AMQP消息负载可以包含任何的二进制内容,因此他们很难再浏览器中展示,编码的选         项含义有如下内容:string/base64,如果消息负载可以使用UTF-8字符串编码,就执行此 操作,否则就按照base64编码进行返回。

Messages
        定义一次从队列中获取的消息数量
 

通过代码分析 

[root@localhost ~]# cat  /bin/rabbitmqadmin | grep ackmode
                'optional':  {'count': '1', 'ackmode': 'ack_requeue_true',
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_true"
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |   payload   | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| test        |          | 0             | hello world | 11            | string           |            | True        |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
#reject_requeue_true:执行多次都不删除消息【因为重新仍回队列中去了只能一条】,只是好看消息

[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |   payload   | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
| test        |          | 0             | hello world | 11            | string           |            | True        |
+-------------+----------+---------------+-------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
No items

#reject_requeue_false:执行一次删除一条消息

完成测试:

#往队列发送4条消息
[root@localhost ~]# rabbitmqadmin publish routing_key=test payload="hello world wubo111111"
Message published
[root@localhost ~]# rabbitmqadmin publish routing_key=test payload="hello world wubo222222"
Message published
[root@localhost ~]# rabbitmqadmin publish routing_key=test payload="hello world wubo333333"
Message published
[root@localhost ~]# rabbitmqadmin publish routing_key=test payload="hello world wubo444444"
Message published

#查看队列里面的消息数

[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 3        |
+------+----------+


#消费消息,决绝处理在仍回队列中(可以多条消息)去
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_true"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 3             | hello world wubo111111 | 22            | string           |            | False       |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_true"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 3             | hello world wubo111111 | 22            | string           |            | True        |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+

#消费消息,决绝处理在仍回队列中(只能是一条消息)去

[root@localhost ~]# rabbitmqadmin get queue=test ackmode="ack_requeue_true"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 3             | hello world wubo111111 | 22            | string           |            | True        |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="ack_requeue_true"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 3             | hello world wubo111111 | 22            | string           |            | True        |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+


#处理消息,然后删除队列中的消息,处理一条删除一条
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 3             | hello world wubo111111 | 22            | string           |            | True        |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 2             | hello world wubo222222 | 22            | string           |            | False       |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 1             | hello world wubo333333 | 22            | string           |            | False       |
+-------------+----------+---------------+------------------------+---------------+------

------------+------------+-------------+

[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| test        |          | 0             | hello world wubo444444 | 22            | string           |            | False       |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
No items


#再次查看消息队列中已经没有消息,都已经消费完
[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 0        |
+------+----------+

需要注意:requeue=true表示查看队列,不消费;requeue=false表示查看队列,进行消费

2 交换机topic(模糊匹配)模式:我们查看下上面创建队列后,默认创建的 Binding:

[root@localhost ~]#  rabbitmqadmin list bindings
+--------+-------------+-------------+
| source | destination | routing_key |
+--------+-------------+-------------+
|        | test        | test        |
+--------+-------------+-------------+

可以看到,使用的默认 Exchange 是空字符串(系统中的第一个 Exchange,Binding 中的 source 部分),并且这个默认的 Exchange 是direct类型(也就是一对一模式),这种隐式调用确保了消息准确投递。

另外,再说一下 Binding 中的三个概念:

  • Source:源头的意思,其实就是 Exchange。
  • destination:目的地的意思,其实就是 Queue。
  • routing_key:路由键的规则,用于 Queue 匹配(比如test.#)。

2.1 那下面我们就手动创建一下 Exchange:

[root@localhost ~]# rabbitmqadmin declare exchange name=my.topic type=topic
exchange declared
[root@localhost ~]# rabbitmqadmin list exchanges
+--------------------+---------+
|        name        |  type   |
+--------------------+---------+
|                    | direct  |
| amq.direct         | direct  |
| amq.fanout         | fanout  |
| amq.headers        | headers |
| amq.match          | headers |
| amq.rabbitmq.trace | topic   |
| amq.topic          | topic   |
| my.topic           | topic   |

需要注意:这边我们只创建了一个 Exchange,类型为 Topic,和之前创建的test队列,目前没有任何关系。

2.2 然后再创建一个 Binding:

[root@localhost ~]# rabbitmqadmin declare binding source=my.topic destination=test routing_key=my.#
binding declared
[root@localhost ~]# rabbitmqadmin list bindings
+----------+-------------+-------------+
|  source  | destination | routing_key |
+----------+-------------+-------------+
|          | test        | test        |
| my.topic | test        | my.#        |
+----------+-------------+-------------+

2.3 下面我们发布两条消息:

[root@localhost ~]# rabbitmqadmin publish routing_key=my.test exchange=my.topic  payload="hello world by my.test"
Message published
[root@localhost ~]# rabbitmqadmin publish routing_key=my.test.test exchange=my.topic  payload="hello world by my.test.test"
Message published

[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 2        |
+------+----------+

需要注意,发布的两条消息都指定了my.topic的 Exchange,但消息的routing_key不同,但都成功发布到test队列了,原因是my.testmy.test.test都符合my.#路由规则。

2.4 下面,我们对两条消息进行消费:

[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count |        payload         | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
| my.test     | my.topic | 1             | hello world by my.test | 22            | string           |            | False       |
+-------------+----------+---------------+------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
+--------------+----------+---------------+-----------------------------+---------------+------------------+------------+-------------+
| routing_key  | exchange | message_count |           payload           | payload_bytes | payload_encoding | properties | redelivered |
+--------------+----------+---------------+-----------------------------+---------------+------------------+------------+-------------+
| my.test.test | my.topic | 0             | hello world by my.test.test | 27            | string           |            | False       |
+--------------+----------+---------------+-----------------------------+---------------+------------------+------------+-------------+
[root@localhost ~]# rabbitmqadmin get queue=test ackmode="reject_requeue_false"
No items
[root@localhost ~]# rabbitmqadmin list queues
+------+----------+
| name | messages |
+------+----------+
| test | 0        |
+------+----------+

rabbitmqadmin 测试到这边,你应该就体会到了 RabbitMQ 的投递过程了吧,我们再对之前的投递过程完善下:

  • 1. 声明一个 Queue,和谁都没有关系(只有名称和持久化配置)。
  • 2. 声明一个 Exchange,和谁都没有关系(只有名称和 Exchange Type 配置)。
  • 3. 声明一个 Binding,通过 source 和 destination,将 Queue 和 Exchange 关联起来,并通过 routing_key,设置发布消息的路由规则。
  • 4. 发布一个消息,需要指定一个 Exchange,以及本身的路由名称就是3中声明binding过程中命名routing_key。
  • 5. 消费队列中的消息,需要指定一个 Queue。

2.5 其他一些使用

2.5.1获取队列列表,其中指定了一些列

[root@localhost ~]# rabbitmqadmin list queues vhost name node messages message_stats.publish_details.rate
+-------+------+------------------+----------+------------------------------------+
| vhost | name |       node       | messages | message_stats.publish_details.rate |
+-------+------+------------------+----------+------------------------------------+
| /     | test | rabbit@localhost | 1        | 0.0                                |
+-------+------+------------------+----------+------------------------------------+
[root@localhost ~]# 

2.5.2 获取队列列表,以及我们可以获取的所有详细信息

[root@localhost ~]# rabbitmqadmin -f long -d 3 list queues

--------------------------------------------------------------------------------

                                    vhost: /
                                     name: test
                                     type: classic
                              auto_delete: False
 backing_queue_status.avg_ack_egress_rate: 1.8964207071877954e-35
backing_queue_status.avg_ack_ingress_rate: 1.8964207071877954e-35
     backing_queue_status.avg_egress_rate: 1.8964207071877954e-35
    backing_queue_status.avg_ingress_rate: 8.874869588878465e-16
               backing_queue_status.delta: ["delta", "undefined", 0, 0, "undefined"]
                 backing_queue_status.len: 1
                backing_queue_status.mode: default
         backing_queue_status.next_seq_id: 16
                  backing_queue_status.q1: 0
                  backing_queue_status.q2: 0
                  backing_queue_status.q3: 0
                  backing_queue_status.q4: 1
    backing_queue_status.target_ram_count: infinity
                     consumer_utilisation: None
                                consumers: 0
                                  durable: True
                                exclusive: False
                   exclusive_consumer_tag: None
       garbage_collection.fullsweep_after: 65535
         garbage_collection.max_heap_size: 0
    garbage_collection.min_bin_vheap_size: 46422
         garbage_collection.min_heap_size: 233
             garbage_collection.minor_gcs: 72
                   head_message_timestamp: None
                               idle_since: 2022-05-13 8:52:28
                                   memory: 14064
                            message_bytes: 27
                  message_bytes_paged_out: 0
                 message_bytes_persistent: 0
                        message_bytes_ram: 27
                      message_bytes_ready: 27
             message_bytes_unacknowledged: 0
                        message_stats.ack: 0
           message_stats.ack_details.rate: 0.0
                    message_stats.deliver: 0
       message_stats.deliver_details.rate: 0.0
                message_stats.deliver_get: 20
   message_stats.deliver_get_details.rate: 0.0
             message_stats.deliver_no_ack: 0
message_stats.deliver_no_ack_details.rate: 0.0
                        message_stats.get: 20
           message_stats.get_details.rate: 0.0
                  message_stats.get_empty: 0
     message_stats.get_empty_details.rate: 0.0
                 message_stats.get_no_ack: 0
    message_stats.get_no_ack_details.rate: 0.0
                    message_stats.publish: 16
       message_stats.publish_details.rate: 0.0
                  message_stats.redeliver: 5
     message_stats.redeliver_details.rate: 0.0
                                 messages: 1
                    messages_details.rate: 0.0
                       messages_paged_out: 0
                      messages_persistent: 0
                             messages_ram: 1
                           messages_ready: 1
              messages_ready_details.rate: 0.0
                       messages_ready_ram: 1
                  messages_unacknowledged: 0
     messages_unacknowledged_details.rate: 0.0
              messages_unacknowledged_ram: 0
                                     node: rabbit@localhost
                          operator_policy: None
                                   policy: None
                       recoverable_slaves: None
                               reductions: 73842
                  reductions_details.rate: 0.0
               single_active_consumer_tag: None
                                    state: running

--------------------------------------------------------------------------------

2.5.3 另一台电脑连接

mq在192.168.1.36服务器

cpoy一下

[root@localhost ~]# scp /usr/bin/rabbitmqadmin 172.16.10.5:/usr/bin/
在 172.16.10.5 yum install python3 -y
[root@loader ~]# rabbitmqadmin -H 192.168.1.36 -u admin -p 123456aA list vhosts
+------+----------+
| name | messages |
+------+----------+
| /    | 1        |
+------+----------+
[root@loader ~]# rabbitmqadmin -H 192.168.1.36 -u admin -p 123456aA list queues vhost name node messages message_stats.publish_details.rate
+-------+------+------------------+----------+------------------------------------+
| vhost | name |       node       | messages | message_stats.publish_details.rate |
+-------+------+------------------+----------+------------------------------------+
| /     | test | rabbit@localhost | 1        | 0.0                                |
+-------+------+------------------+----------+------------------------------------+

 2.5.4 创建带参数的队列

[root@localhost ~]# rabbitmqadmin declare queue name=test1 name=wubo
queue declared
[root@localhost ~]# rabbitmqadmin list queues vhost name node messages message_stats.publish_details.rate
+-------+------+------------------+----------+------------------------------------+
| vhost | name |       node       | messages | message_stats.publish_details.rate |
+-------+------+------------------+----------+------------------------------------+
| /     | test | rabbit@localhost | 1        | 0.0                                |
| /     | wubo | rabbit@localhost |          |                                    |

[root@localhost ~]# rabbitmqadmin list bindings
+----------+-------------+-------------+
|  source  | destination | routing_key |
+----------+-------------+-------------+
|          | test        | test        |
|          | wubo        | wubo        |
| my.topic | test        | my.#        |
+----------+-------------+-------------+

[root@localhost ~]#  rabbitmqadmin publish routing_key=wubo payload="test wubowybowybio"
Message published
[root@localhost ~]# rabbitmqadmin list queues vhost name node messages message_stats.publish_details.rate
+-------+------+------------------+----------+------------------------------------+
| vhost | name |       node       | messages | message_stats.publish_details.rate |
+-------+------+------------------+----------+------------------------------------+
| /     | test | rabbit@localhost | 1        | 0.0                                |
| /     | wubo | rabbit@localhost | 1        | 0.0                                |
+-------+------+------------------+----------+------------------------------------+

 2.5.5  导出/导入默认配置

rabbitmqadmin export rabbit.definitions.json


rabbitmqadmin -q import rabbit.definitions.json

2.5.6 关闭所有连接

[root@localhost ~]# rabbitmqadmin -f tsv -q list connections name | while read conn ; do rabbitmqadmin -q close connection name="${conn}" ; done

rabbitmqadmin 命令汇总:

命令解释
rabbitmqadmin list users查看所有用户 User
rabbitmqadmin list users name查看所有用户名 Username
rabbitmqadmin list users tags查看所有用户角色
rabbitmqadmin list vhosts查看所有虚拟主机
rabbitmqadmin list connections查看所有连接
rabbitmqadmin list exchanges查看所有路由 Exchange
rabbitmqadmin list bindings查看所有路由与队列的关系绑定 Binding
rabbitmqadmin list permissions查看所有角色的权限 Permission
rabbitmqadmin list channels查看所有通道 Channel
rabbitmqadmin list consumers查看所有消费者 Consumer
rabbitmqadmin list queues查看所有消息队列 Queue
rabbitmqadmin list nodes查看所有节点 Node
rabbitmqadmin show overview概览 Overview
rabbitmqadmin list bindings source destination_type destination properties_key查看所有路由与队列的关系绑定的详细信息 Binding
rabbitmqadmin declare queue name=test durable=true定义一个队列queue,durable=true代表持久化打开。
rabbitmqadmin declare exchange name=my.fanout type=fanout定义一个Fanout路由
rabbitmqadmin declare exchange name=my.direct type=direct定义一个Direct路由
rabbitmqadmin declare exchange name=my.topic type=topic定义一个Topic路由
rabbitmqadmin declare binding source=my.fanout destination=test routing_key=first定义 binding
rabbitmqadmin publish routing_key=test payload="hello world"发布一条消息
rabbitmqadmin publish routing_key=my.test exchange=my.topic payload="hello world"使用路由转发消息
rabbitmqadmin get queue=test requeue=true查看消息,不消费
rabbitmqadmin get queue=test requeue=false查看消息,并消费
rabbitmqadmin purge queue name=test删除队列中的所有消息
rabbitmqadmin delete queue name=hello删除消息队列 Queue
rabbitmqadmin delete user name=test删除用户 User
rabbitmqadmin delete exchange name=test删除路由器 Exchange
rabbitmqadmin delete binding source='kk' destination_type=queue destination=test properties_key=test删除路由器与消息队列的关系绑定 Binding
rabbitmqadmin -f raw_json list usersraw_json 格式化输出
rabbitmqadmin -f long list users格式化输出
rabbitmqadmin -f pretty_json list userspretty_json 格式化输出
rabbitmqadmin -f kvp list users格式化输出
rabbitmqadmin -f tsv list users格式化输出
rabbitmqadmin -f table list userstable 格式化输出
rabbitmqadmin -f bash list usersbash 格式化输出

参考资料:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值