RabbitMQ文档翻译:rabbitmqctl(1)用户手册页,rabbitmqctl(1) manual page
这是 rabbitmqctl(1) 的用户手册页。
欲查看 更通用的文档, 请阅读 管理员指南 。
rabbitmqctl — 用来管理RabbitMQ 转发器的命令行工具
rabbitmqctl [-n node ] [-t timeout ] [-q] { command } [ command options ...]
RabbitMQ是对于AMQP的一个实现,AMQP是对于高性能企业级消息传输的一个新兴标准。RabbitMQ服务器是一个稳定的、可扩展的AMQP 转发器实现。
rabbitmqctl 是一个用于管理RabbitMQ 服务器 的 命令行工具。 它是通过连接到该转发器的某个节点来完成所有工作 的。
在以下情况下,会显示诊断信息:转发器未运行;无法连接到转发器;转发器因为Erlang 小甜饼(cookies)不匹配而拒绝连接。
purge_queue {queue}
queue
要清空的队列名字。
清空一个队列(移除其中的所有消息)。
注意 , rabbitmqctl 管理的是 RabbitMQ 的内部用户数据库。来自其它任何认证后端 的用户,对于 rabbitmqctl 来说都是不可见的。
add_user { username } { password }
username
要创建的用户的名字。
password
要创建的用户,将用来登录到此转发器的密码。
示例:
rabbitmqctl add_user tonyg changeit
这条命令,使得 RabbitMQ转发器创建 一个 ( 非管理员 )用户, 名为 tonyg , (初始)密码 为 changeit 。
delete_user { username }
username
要删除的用户的名字。
示例:
rabbitmqctl delete_user tonyg
这条命令,使得 RabbitMQ转发器删除 名为 tonyg 的用户。
change_password { username } { newpassword }
username
要修改其密码的用户的名字。
newpassword
该用户的新密码。
示例:
rabbitmqctl change_password tonyg newpass
这条命令,使得 RabbitMQ转发器 将名为 tonyg 的用户的密码修改为 newpass 。
list_users
列出用户。结果中的每一行,会包含用户名,以及为该用户设置的标签列表。
示例:
rabbitmqctl list_users
这条命令,使得RabbitMQ转发器列出所有用户。
注意 , rabbitmqctl 管理的是 RabbitMQ 的内部用户数据库。来自其它任何认证后端 的用户 的权限 ,对于 rabbitmqctl 来说都是不可见的。
set_permissions [-p vhostpath ] { user } { conf } { write } { read }
vhostpath
要为该用户赋予权限的虚拟主机的名字,默认为 / 。
user
要为其赋予指定虚拟主机的权限的用户的名字。
conf
一个正则表达式,对于与该表达式相匹配的那些资源,都会向用户赋予配置权限。
write
一个正则表达式,对于与该表达式相匹配的那些资源,都会向用户赋予写入权限。
read
一个正则表达式,对于与该表达式相匹配的那些资源,都会向用户赋予读取权限。
设置用户的权限。
示例:
rabbitmqctl set_permissions -p /myvhost tonyg "^tonyg-.*" ".*" ".*"
这条命令,使得 RabbitMQ转发 器 向名为 tonyg 的用户赋予针对虚拟主机 /myvhost 的各个权限,其中包括:对于所有 以"tonyg-"开头的资源的配置权限; 以及,对于所有资源的写入和读取权限。
list_permissions [-p vhostpath ]
vhostpath
虚拟 主机的名字,就是要列出针对 该虚拟主机赋予过权限的用户的列表,以及它们被赋予的权限。默认是 / 。
列出一个虚拟主机的所有权限。
示例:
rabbitmqctl list_permissions -p /myvhost
这条命令,使得 RabbitMQ转发器列出针对虚拟 主机 /myvhost 被赋予过权限的所有用户,以及它们被赋予的 对该虚拟主机中的资源进行操作的 权限。注意 ,空白字符串表示未赋予任何权限。
list_user_permissions { username }
username
要列出其权限的用户的名字。
列出用户的权限。
示例:
rabbitmqctl list_user_permissions tonyg
这条命令,使得 RabbitMQ转发器列出 已为名为 tonyg 的用户赋予权限的所有虚拟主机, 以及该用户在这些虚拟主机中被赋予的针对各种资源的操作权限。
服务器状态查询 ,会 与服务器进行通信获取到相应的信息,然后返回 一个结果列表 ,其 中,以制表符来分隔 各个列。某些查询 ( list_queues 、 list_exchanges 、 list_bindings 和 list_consumers ) 还会接受一个可选的 vhost 参数。如果提供 这个参数的话,那么,它必须紧跟在查询命令之后。
list_queues、list_exchanges和list_bindings命令,接受一个可选的虚拟主机参数,表示列出针对该虚拟主机的结果。默认值是"/"。
list_queues [-p vhostpath ] [ queueinfoitem ...]
返回队列详情 。如果 未指定"-p"参数,则会返回虚拟主机 / 的队列详情。 "-p"参数 可用来覆盖这个默认值。
queueinfoitem 参数 ,用来指明,要将哪些队列信息条目包含在结果中。结果 中的列顺序会与 该参数中指定的列顺序相同。 queueinfoitem 中可以包含以下列表中任何值:
name
队列的名字,非ASCII字符会按照C 语言的方式转义。
durable
该队列是否会在服务器重启之后仍然存活。
auto_delete
该队列是否会在不被使用时自动删除。
arguments
队列参数。
policy
应用到该队列的策略名字。
pid
与该队列相关联的Erlang 进程的编号。
owner_pid
代表着该队列所在的连接的Erlang 进程的编号,该连接是该队列的排他性拥有者。如果该队列不是排他性的,则此字段为空。
exclusive_consumer_pid
代表着排他性地订阅到该队列的消费者的频道的Erlang 进程编号。如果没有排他性消费者,则此字段为空。
exclusive_consumer_tag
排他性地订阅到此队列的那个消费者的消费者标签。如果没有排他性消费者,则此字段为空。
messages_ready
准备传递到客户端的消息个数。
messages_unacknowledged
已经传递到客户端,却尚未被确认的消息个数。
messages
已准备传递和尚未确认的消息的总数(队列深度)。
messages_ready_ram
messages_ready 中,正处于内存中的消息的个数。
messages_unacknowledged_ram
messages_unacknowledged 中,正处于内存中的消息个数。
messages_ram
处于内存中的消息总数。
messages_persistent
队列中持久性消息的总数(对于非持久队列,这个值总是0)。
message_bytes
队列中所有消息的消息体长度之和。这不包括消息属性(属性包括消息头)或额外开销。
message_bytes_ready
与 message_bytes 类似,但是,计算 的是所有准备传递给客户端的消息的消息体长度之和。
message_bytes_unacknowledged
与 message_bytes 类似,但是, 只把那些已传递到客户端而尚未确认的消息计算在内。
message_bytes_ram
与 message_bytes 类似,但是,只将当前处于内存的消息计算在内。
message_bytes_persistent
与 message_bytes 类似,但是,只将持久性消息计算在内。
disk_reads
自从这个队列启动以来,从磁盘上读取消息的总次数。
disk_writes
自从这个队列启动以来,向磁盘上写入消息的总次数。
consumers
消费者个数。
consumer_utilisation
此队列能够立即向消费者传递消息的时间比例(位于0.0到1.0之间)。如果消费者因为网络拥塞或预取个数设置而受限制,那么,这个值可能会小于1.0。
memory
与这个队列相关联的Erlang 进程所消耗的内存大小,以字节为单位,包括栈、堆和内部数据结构。
slave_pids
如果此队列已被镜像,那么,此字段就输出当前所有从队列的编号。
synchronised_slave_pids
如果此队列已被镜像,那么,此字段就输出当前所有已与主队列同步的从队列的编号——也就是说,那些能够在不丢失消息的前提下替换掉主队列的从队列。
state
队列 的状态。 一般情况下是“运行中”( 'running' ),但是,如果 该队列正在进行同步的话, 状态 会是 "{syncing, MsgCount}" 。对于那些位于集群 里当前处于离线状态的 节点 中的队列,其状态会是“离线”( 'down' ) (并且 ,大部分其它的队列信息( queueinfoitem )都会处于不可用状态 ) 。
如果 未指定任何队列信息项( queueinfoitem ),那么,会显示队列名字和深度。
示例:
rabbitmqctl list_queues -p /myvhost messages consumers
这条命令,显示名为 /myvhost 的虚拟主机上每个队列 的深度和消费者个数。
list_connections [ connectioninfoitem ...]
返回TCP/IP连接统计信息。
connectioninfoitem 参数 ,其作用是,指明 要在结果中包含哪些连接信息 项。结果 中各个列的顺序,会与参数 中指定的顺序相同。 connectioninfoitem 中,可以包含以下列表中任何值:
pid
与这个连接相关联的Erlang 进程的编号。
name
该连接的可读名字。
port
服务器端口号。
host
通过DNS 反向查询获取到的服务器主机名,如果DNS 反向查询失败或未启用则显示其IP 地址。
peer_port
对端端口号。
peer_host
通过反向DNS 查询获取到的对端主机名,如果反向DNS 查询失败或未启用则显示其IP 地址。
ssl
逻辑值,表示该连接是否是通过SSL 建立的安全连接。
ssl_protocol
SSL协议(例如tlsv1)
ssl_key_exchange
SSL密钥交换算法(例如rsa)
ssl_cipher
SSL加密算法(例如aes_256_cbc)
ssl_hash
SSL散列算法(例如sha)
peer_cert_subject
对端的SSL 证书主题,以RFC4514 格式表示。
peer_cert_issuer
对端的SSL 证书签发机构,以RFC4514 格式表示。
peer_cert_validity
对端SSL 证书的有效期。
state
连接状态( 可取值为[ starting 、 tuning 、 opening 、 running 、 flow 、 blocking 、 blocked 、 closing 、 closed ]中的一个 ) 。
channels
正在使用这个连接的频道个数。
protocol
正在使用 的AMQP 协议版本 (目前 会是 {0,9,1} 或 {0,8,0} ) 。注意 ,如果某个客户端请求建立 一个 AMQP 0-9连接 ,那么,我们会建立AMQP 0-9-1 的连接。
auth_mechanism
所使用的 SASL认证机制 ,例如 PLAIN 。
user
与该连接相关联的用户名。
vhost
虚拟主机的名字,非ASCII字符会以C 语言的形式转义。
timeout
连接的超时时间/协商达成的心跳间隔,以秒为单位。
frame_max
最大的帧长度(以字节为单位)。
channel_max
这个连接的最大频道个数。
client_properties
连接建立过程中由客户端传送过来的辅助信息属性。
recv_oct
已经接收到的八位元个数。
recv_cnt
已经接收到的数据包个数。
send_oct
已经发送的八位元个数。
send_cnt
已经发送的数据包个数。
send_pend
发送队列的长度。
connected_at
此连接建立时的日期和时间,以时间戳的形式表示。
如果 未指定 connectioninfoitem ,那么,会显示:用户、对端主机名、对端端口号、启动流量控制以来的时间以及内存 块状态。
示例:
rabbitmqctl list_connections send_pend port
这条命令,显示每个连接的发送队列长度和服务器端口号。
status
显示转发 器的状态信息,例如:当前 Erlang 节点 上运行的应用程序 、 RabbitMQ 和 Erlang版本 号、操作系统名字 、内存 及文件描述符统计信息。 (参考 cluster_status 命令 以了解 该如何知道哪些节点位于集群 中并且处于运行状态。 )
示例:
rabbitmqctl status
这条命令,显示出RabbitMQ 转发器的全部信息。
environment
显示应用程序环境中运行的每个应用程序的每个变量的名字和值。
Summer Glau
未知美人
Your opinionsHxLauncher: Launch Android applications by voice commands