基本命令
命令 | 说明 | 参数 |
---|---|---|
rabbitmqctl list_vhosts |
列举所有虚拟主机 | |
rabbitmqctl add_vhost <vhost_name> |
添加虚拟主机 |
vhost_name 创开虚拟主机的名称 |
rabbitmqctl delete_vhost <vhost_name> |
删除虚拟主机 |
vhost_name 删除虚拟主机的名称 |
rabbitmqctl add_user <username> <password> |
添加用户 |
username 用户名 password 密码 |
rabbitmqctl set_user_tags <username> <tag> |
设置用户标签 |
username 用户名 tag 标签 如:administrator, monitoring, management |
rabbitmqctl set_permissions [-p <vhost>] <user> <conf> <write> <read> |
设置权限(如:队列交换机的创建和删除、发布消息、读取消息等) |
user 用户名 conf 正则表达式匹配置资源能够被用户访问。write 正则表达式匹配置资源能够被用户读。read 正则表达式匹配置资源能够该用户访问 示例: rabbitmqctl set_permissions ceshi ".*" ".*" ".*" 给 ceshi 用户最高权限 |
rabbitmqctl list_consumers |
消费者状态查询 | |
rabbitmqctl node_health_check |
节点状态查询 | |
rabbitmqctl environment |
环境变量查询 | |
rabbitmqctl report |
服务器状态报告 |
队列状态 rabbitmqctl list_queues <-p vhost> <<--offline> \| <--online> \| <--local>> <queueinfoitem ..>
参数说明
参数 | 说明 |
---|---|
--offline |
表示仅仅列出当前不可用的持久队列(更具体地说,他们的主节点不是) |
--online |
表示列出当前可用的队列(他们的主节点是) |
--local |
表示仅仅列出那些主程序在当前节点上的队列 |
queueinfoitem: |
参数用于指示要包括在结果中的哪些队列信息项。结果中的列顺序将与参数的顺序相匹配。可以从以下列表中获取任何值: |
name |
表示队列的名称 |
durable |
表示服务器重启之后,队列是否存活 |
auto_delete |
表示不再使用的队列是否自动被删除 |
arguments |
表示队列的参数 |
policy |
表示应用在队列中的策略名称 |
pid |
表示和队列相关联的Erlang进程的ID |
owner_pid |
表示作为队列的排他所有者的连接的Erlang进程的ID,如果队列是非排他,则为空 |
exclusive |
表示队列是否是排他的,有 owner_pid 返回 True,否则返回 False |
exclusive_consumer_pid |
表示排他消费者订阅该队列的频道的Erlang进程的ID,如果没有独家消费者,则为空 |
exclusive_consumer_tag |
表示订阅该队列的排他消费者的消费tag。如果没有排他消费者,则为空 |
messages_ready |
表示准备被发送到客户端的消息数量 |
messages_unacknowledged |
表示已经被发送到客户端但是还没有被确认的消息数量 |
messages |
表示准备发送和没有被确认的消息数量总和(队列深度) |
messages_ready_ram |
表示驻留在 ram 里的 messages_ready 的消息数量 |
messages_unacknowledged_ram |
表示驻留在 ram 里的 messages_unacknowledged 的消息数量 |
messages_ram |
表示驻留在 ram 里的消息总数 |
messages_persistent |
表示队列中持久消息的总数(对于临时队列,总是为0) |
message_bytes |
表示在队列中所有消息body的大小,这并不包括消息属性(包括header)或者任何开销 |
message_bytes_ready |
表示类似于 messge_bytes 但仅仅计算那些将发送到客户端的消息 |
message_bytes_unacknowledged |
表示类似于 message_bytes 但仅仅计算那些已经发送到客户还没有确认的消息 |
message_bytes_ram |
表示类似于 message_bytes 但仅仅计算那些驻留在ram中的消息 |
message_bytes_persistent |
表示类似于 message_bytes 但仅仅计算那些持久消息 |
head_message_timestamp |
表示队列中第一个消息的时间戳属性(如果存在)。只有处在 paged-in 状态的消息才存在时间戳。 |
disk_reads |
表示该队列自start起,从磁盘读取消息的次数总和 |
disk_writes |
表示该队列自start起,被写入磁盘消息的次数总和 |
consumers |
表示consumer的数量 |
consumer_utilisation |
表示队列能够立即将消息传递给消费者的时间分数(0.0 ~ 1.0之间),如果消费者受到网络拥塞或者预取计数的限制,该值可能小于1.0 |
memory |
表示和该队列相关联的Erlang进程消耗的内存字节数,包括stack/heap/内部数据结构 |
slave_pids |
表示该队列目前的slave的ID号(如果该队列被镜像的话) |
synchronised_slave_pids |
表示如果队列被镜像,给出与主队列同步的当前slave的ID号,即可以从主队列接管而不丢失消息的slave的ID |
state |
表示队列的状态,一般是 “running”; 如果队列正在同步,也可能是 “{syncing, MsgCount}”; 如果队列所处的节点当前down了,队列显示的状态为 “down” |
交换器状态查 rabbitmqctl list_exchanges <-p vhost> <exchangeinfoitem>
中 exchangeinfoitem
参数说明
参数 | 说明 |
---|---|
name |
示交换器的名称 |
type |
示交换器类型(例如: direct/topic/fanout/headers) |
durable |
示服务器重启之后,交换器是否存活 |
auto_delete |
示交换器不再使用时,是否被自动删除 |
internal |
示交换器是否是内部的,例如不能被客户端直接发布 |
arguments |
示交换器的参数 |
policy |
示引用在该交换器上的策略名称 |
链接状态 rabbitmqctl list_connections <connectioninfoitem>
参数说明
参数 | 说明 |
---|---|
pid |
示与该connection相关联的Erlang进程的id号 |
name |
示该连接的可读性名称 |
port |
示服务端口 |
host |
示通过反向DNS获取的服务器主机名,如果反向DNS失败或未启用,则为其IP地址 |
peer_port |
示对等端口 |
peer_host |
示通过反向DNS获取的对等主机名,如果反向DNS失败或未启用,则为其IP地址 |
ssl |
示该连接是否使用SSL保护的bool值 |
ssl_protocal |
示SSL协议(例如: tlsv1) |
ssl_key_exchange |
示SSL关键交换器算法(例如: rsa) |
ssl_cipher |
示SSL密码算法(例如: aes_256_cbc) |
ssl_hash |
示SSL哈希函数(例如: sha) |
peer_cert_issuer |
示对等体的SSL证书的颁发者,以RFC4514形式出现 |
peer_cert_validity |
示对等体的SSL证书的有效期限 |
state |
示连接状态(例如: starting/tuning/opening/running/flow/blocking/blocked/closing/closed) |
channels |
示正在使用连接的通道数量 |
protocol |
示正在使用的AMQP的版本号。注意,如果一个客户端需要一个AMQP 0-9 连接,我们将其作为 AMQP 0-9-1 |
auth_mechanism |
示使用SASL认证机制,如PLAN |
user |
示和该连接相关联的用户名 |
vhost |
示vhost名称 |
timeout |
示连接超时/协商心跳间隔,单位为秒 |
frame_max |
示最大的frame大小(byte) |
channel_max |
示该连接上通道的最大数量 |
client_properties |
示在连接建立期间,有客户端传送的消息属性 |
recv_oct |
示接受到的八位字节 |
recv_cnt |
示接受到的包 |
send_oct |
示发送的八位字节 |
send_cnt |
示发送的包 |
send_pend |
示发送的队列大小 |
connected_at |
示该连接被建立的日期和时间的时间戳格式 |
绑定状态 rabbitmqctl list_bindings <-p vhost> <bindinginfoitem>
参数说明
参数 | 说明 |
---|---|
source_name |
表示绑定附加到的消息源的名称 |
source_kind |
表示绑定附加到的消息源的类型,目前通常交换器 |
destination_name |
表示附加绑定到的消息目的地的名称 |
destination_kind |
表示附加绑定到的消息目的地的类型 |
routing_key |
表示绑定的routing key |
arguments |
表示绑定的参数 |
通道状态查询 rabbitmqctl list_channels <channelinfoitem>
参数 | 说明 |
---|---|
pid |
表示与该连接相关联的Erlang程序的ID号 |
connection |
表示与通道所属连接相关联的Erlang进程的ID号 |
name |
表示通道的可读性名称 |
number |
表示通道的号码,在连接中唯一表示它 |
user |
表示和该通道相关联的用户名 |
vhost |
表示通道操作所在的vhost |
transactional |
表示通道是否处于事务模式,返回 true,否则返回 false |
confirm |
表示通道是否处于确认模式,返回 true, 否则返回 false |
consumer_count |
表示通过通道检索消息的逻辑AMQP消费者数量 |
messages_unacknowledged |
表示通过通道发送过但还没收到反馈的消息的数量 |
messages_uncommitted |
表示尚未提交的事务中接受的消息数 |
acks_uncommitted |
表示尚未提交的事务中接受的确认数 |
messages_unconfirmed |
表示尚未确认已发布的消息数量。在不处于确认模式中的通道上,该值为0 |
prefetch_count |
表示新消费者的QoS预取限制,如果没有限制则为0 |
global_prefetch_count |
表示整个通道的QoS预取限制,如果没有限制则为0 |
网友评论