RabbitMQ常用命令 3.1 启动停止rabbitMQ命令 # 前台启动Erlang VM 和 RabbitMQ 当窗口关闭或者ctrl+c时,使退出了。rabbitmq-server# 使用系统命令启动systemctl start
# 前台启动Erlang VM 和 RabbitMQ 当窗口关闭或者ctrl+c时,使退出了。rabbitmq-server# 使用系统命令启动systemctl start rabbitmq-server# 后台启动rabbitmq-server -detached# 停止rabbitMQ和Erlang VMrabbitmq-server stop
样例输出
启动命令-rabbitmq-server
[root@mes01 soft]# rabbitmq-server ## ## RabbitMQ 3.8.5 ## ## ########## Copyright (c) 2007-2020 VMware, Inc. or its affiliates. ###### ## ########## Licensed under the MPL 1.1. WEBsite: https://rabbitmq.com Doc guides: Https://rabbitmq.com/documentation.html Support: https://rabbitmq.com/contact.html Tutorials: https://rabbitmq.com/getstarted.html Monitoring: https://rabbitmq.com/monitoring.html Logs: /var/log/rabbitmq/rabbit@mes01.log /var/log/rabbitmq/rabbit@mes01_upgrade.log Config file(s): (none) Starting broker... completed with 3 plugins.
后台启动命令-rabbitmq-server -detached
[root@mes01 soft]# rabbitmq-server -detached[root@mes01 soft]#
停止命令-rabbitmq-server stop
[root@mes01 soft]# rabbitmq-server stopBOOT FaiLED===========ERROR: distribution port 25672 in use by rabbit@mes0114:12:35.938 [error] 14:12:35.943 [error] BOOT FAILED14:12:35.943 [error] ===========14:12:35.943 [error] ERROR: distribution port 25672 in use by rabbit@mes0114:12:35.943 [error] 14:12:36.946 [error] Supervisor rabbit_prelaunch_sup had child prelaunch started with rabbit_prelaunch:run_prelaunch_first_phase() at undefined exit with reason {dist_port_already_used,25672,"rabbit","mes01"} in context start_error14:12:36.947 [error] CRASH REPORT Process <0.154.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","mes01"}}},{rabbit_prelaunch_app,start,[nORMal,[]]}} in application_master:init/4 line 138{"Kernel pid terminated",application_controller,"{application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,\"rabbit\",\"mes01\"}}},{rabbit_prelaunch_app,start,[normal,[]]}}}"}Kernel pid terminated (application_controller) ({application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","mes01"}}},{rabbit_prelCrash dump is being written to: erl_crash.dump...done
停止命令-rabbitmq-server stop
[root@mes01 soft]# rabbitmqctl stopStopping and halting node rabbit@mes01 ...
启动后的进程信息
[root@mes01 ~]# ps -ef | grep rabbitmqroot 1413 1333 0 14:19 pts/0 00:00:00 /sbin/runuser -u rabbitmq -- /usr/lib/rabbitmq/bin/rabbitmq-serverrabbitmq 1421 1413 0 14:19 pts/0 00:00:00 /bin/sh /usr/lib/rabbitmq/bin/rabbitmq-serverrabbitmq 1428 1421 43 14:19 pts/0 00:00:12 /usr/lib64/erlang/erts-11.0.2/bin/beam.smp -W w -K true -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -B i -- -root /usr/lib64/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa -noshell -noinput -s rabbit boot -boot start_sasl -lager crash_log false -lager handlers []rabbitmq 1539 1428 0 14:19 ? 00:00:00 erl_child_setup 1024rabbitmq 1568 1 0 14:19 ? 00:00:00 /usr/lib64/erlang/erts-11.0.2/bin/epmd -daemonrabbitmq 1595 1539 0 14:19 ? 00:00:00 inet_gethost 4rabbitmq 1596 1595 0 14:19 ? 00:00:00 inet_gethost 4root 1679 1621 0 14:19 pts/1 00:00:00 grep --color=auto rabbitmq
# 查看所有队列rabbitmqctl list_queues# 查看所有虚拟主机rabbitmqctl list_vhosts# 在Erlang VM运行的情况下启动或者停止RabbitMQ应用rabbitmqctl start_apprabbitmqctl stop_app# 查看节点状态rabbitmqctl status# 查看可用插件rabbitmq-plugins list# 启用插件rabbitmq-plugins enable <plugin-name># 停用插件rabbitmq-plugins disable <plugin-name># 移除所有数据 要在rabbitmqctl stop_app之后使用rabbitmqctl reset# 查看所有交换器信息-列表式rabbitmqctl list_exchanges# 格式化查看rabbitmqctl list_exchanges --formatter pretty_table # 查看绑定的列表 - 查看交换机队列绑定信息rabbitmqctl list_bindings# 格式化查看rabbitmqctl list_bindings --formatter pretty_table
样例:
查看所有队列-rabbitmqctl list_queues
[root@mes01 ~]# rabbitmqctl list_queuesTimeout: 60.0 seconds ...Listing queues for vhost / ...
查看所有虚拟主机-rabbitmqctl list_vhosts
[root@mes01 ~]# rabbitmqctl list_vhostsListing vhosts ...name/
停止RabbitMQ应用-rabbitmqctl stop_app
[root@mes01 ~]# rabbitmqctl stop_appStopping rabbit application on node rabbit@mes01 ...
当停止应用后,可以观察到mq的进程都还是存在的。但页面已经无法访问
[root@mes01 ~]# ps -ef | grep rabbitmqrabbitmq 1568 1 0 14:19 ? 00:00:00 /usr/lib64/erlang/erts-11.0.2/bin/epmd -daemonrabbitmq 1971 1 5 14:22 ? 00:00:41 /usr/lib64/erlang/erts-11.0.2/bin/beam.smp -W w -K true -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -- -root /usr/lib64/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa -noshell -noinput -s rabbit boot -boot start_sasl -lager crash_log false -lager handlers []rabbitmq 2080 1971 0 14:22 ? 00:00:00 erl_child_setup 32768rabbitmq 2146 2080 0 14:22 ? 00:00:00 inet_gethost 4rabbitmq 2396 2146 0 14:24 ? 00:00:00 inet_gethost 4root 3584 1621 0 14:35 pts/1 00:00:00 grep --color=auto rabbitmq
观察页面,已经不能访问了。
启动RabbitMQ应用-rabbitmqctl start_app
[root@mes01 ~]# rabbitmqctl start_appStarting node rabbit@mes01 ...
此时查看进程
[root@mes01 ~]# ps -ef | grep rabbitmqrabbitmq 1568 1 0 14:19 ? 00:00:00 /usr/lib64/erlang/erts-11.0.2/bin/epmd -daemonrabbitmq 1971 1 5 14:22 ? 00:00:50 /usr/lib64/erlang/erts-11.0.2/bin/beam.smp -W w -K true -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -- -root /usr/lib64/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa -noshell -noinput -s rabbit boot -boot start_sasl -lager crash_log false -lager handlers []rabbitmq 2080 1971 0 14:22 ? 00:00:00 erl_child_setup 32768rabbitmq 2146 2080 0 14:22 ? 00:00:00 inet_gethost 4rabbitmq 2396 2146 0 14:24 ? 00:00:00 inet_gethost 4root 3841 1621 0 14:38 pts/1 00:00:00 grep --color=auto rabbitmq
查看rabbitMQ管理页面
查看节点状态-rabbitmqctl status
[root@mes01 ~]# rabbitmqctl statusStatus of node rabbit@mes01 ...RuntimeOS PID: 1971OS: linuxUptime (seconds): 1137RabbitMQ version: 3.8.5Node name: rabbit@mes01Erlang configuration: Erlang/OTP 23 [erts-11.0.2] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:64] [hipe]Erlang processes: 448 used, 1048576 limitScheduler run queue: 1Cluster heartbeat timeout (net_ticktime): 60PluginsEnabled plugin file: /etc/rabbitmq/enabled_pluginsEnabled plugins: * rabbitmq_management * amqp_client * rabbitmq_web_dispatch * cowboy * cowlib * rabbitmq_management_agentData directoryNode data directory: /var/lib/rabbitmq/mnesia/rabbit@mes01Raft data directory: /var/lib/rabbitmq/mnesia/rabbit@mes01/quorum/rabbit@mes01Config filesLog file(s) * /var/log/rabbitmq/rabbit@mes01.log * /var/log/rabbitmq/rabbit@mes01_upgrade.logAlarms(none)MemoryCalculation strategy: rSSMemory high watermark setting: 0.4 of available memory, computed to: 3.295 gbother_proc: 0.0333 gb (31.58 %)code: 0.0277 gb (26.21 %)allocated_unused: 0.0171 gb (16.17 %)other_system: 0.0143 gb (13.52 %)reserved_unallocated: 0.0062 gb (5.9 %)other_ets: 0.0032 gb (3.05 %)atom: 0.0014 gb (1.34 %)plugins: 0.0014 gb (1.32 %)binary: 0.0002 gb (0.21 %)mgmt_db: 0.0002 gb (0.21 %)metrics: 0.0002 gb (0.2 %)connection_other: 0.0002 gb (0.15 %)mnesia: 0.0001 gb (0.07 %)quorum_ets: 0.0 gb (0.05 %)msg_index: 0.0 gb (0.03 %)connection_channels: 0.0 gb (0.0 %)connection_readers: 0.0 gb (0.0 %)connection_writers: 0.0 gb (0.0 %)queue_procs: 0.0 gb (0.0 %)queue_slave_procs: 0.0 gb (0.0 %)quorum_queue_procs: 0.0 gb (0.0 %)File DescriptorsTotal: 2, limit: 32671Sockets: 0, limit: 29401Free Disk SpaceLow free disk space watermark: 0.05 gbFree disk space: 23.2459 gbTotalsConnection count: 0Queue count: 0Virtual host count: 1ListenersInterface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communicationInterface: [::], port: 5672, protocol: amqp, purpose: AMQP 0-9-1 and AMQP 1.0Interface: [::], port: 15672, protocol: http, purpose: HTTP api
查看可用插件-rabbitmq-plugins list
[root@mes01 ~]# rabbitmq-plugins listListing plugins with pattern ".*" ... Configured: E = explicitly enabled; e = implicitly enabled | Status: * = running on rabbit@mes01 |/[ ] rabbitmq_amqp1_0 3.8.5[ ] rabbitmq_auth_backend_cache 3.8.5[ ] rabbitmq_auth_backend_http 3.8.5[ ] rabbitmq_auth_backend_ldap 3.8.5[ ] rabbitmq_auth_backend_oauth2 3.8.5[ ] rabbitmq_auth_mechanism_ssl 3.8.5[ ] rabbitmq_consistent_hash_exchange 3.8.5[ ] rabbitmq_event_exchange 3.8.5[ ] rabbitmq_federation 3.8.5[ ] rabbitmq_federation_management 3.8.5[ ] rabbitmq_jms_topic_exchange 3.8.5[E*] rabbitmq_management 3.8.5[e*] rabbitmq_management_agent 3.8.5[ ] rabbitmq_mQtt 3.8.5[ ] rabbitmq_peer_discovery_aws 3.8.5[ ] rabbitmq_peer_discovery_common 3.8.5[ ] rabbitmq_peer_discovery_consul 3.8.5[ ] rabbitmq_peer_discovery_etcd 3.8.5[ ] rabbitmq_peer_discovery_k8s 3.8.5[ ] rabbitmq_prometheus 3.8.5[ ] rabbitmq_random_exchange 3.8.5[ ] rabbitmq_recent_history_exchange 3.8.5[ ] rabbitmq_sharding 3.8.5[ ] rabbitmq_shovel 3.8.5[ ] rabbitmq_shovel_management 3.8.5[ ] rabbitmq_stomp 3.8.5[ ] rabbitmq_top 3.8.5[ ] rabbitmq_tracing 3.8.5[ ] rabbitmq_trust_store 3.8.5[e*] rabbitmq_web_dispatch 3.8.5[ ] rabbitmq_web_mqtt 3.8.5[ ] rabbitmq_web_mqtt_examples 3.8.5[ ] rabbitmq_web_stomp 3.8.5[ ] rabbitmq_web_stomp_examples 3.8.5
E* 表示启动的插件 e* 表示依赖启动的插件
rabbitmq_management 依赖于rabbitmq_management_agent和rabbitmq_web_dispatch
启用插件-rabbitmq-plugins enable rabbitmq_management
[root@mes01 soft]# rabbitmq-plugins enable rabbitmq_managementEnabling plugins on node rabbit@mes01:rabbitmq_managementThe following plugins have been configured: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatchApplying plugin configuration to rabbit@mes01...The following plugins have been enabled: rabbitmq_management rabbitmq_management_agent rabbitmq_web_dispatchstarted 3 plugins.
信用插件-rabbitmq-plugins disable rabbitmq_management
[root@mes01 ~]# rabbitmq-plugins disable rabbitmq_managementDisabling plugins on node rabbit@mes01:rabbitmq_managementAll plugins have been disabled.Applying plugin configuration to rabbit@mes01...The following plugins have been disabled: rabbitmq_management_agent rabbitmq_web_dispatch rabbitmq_managementstopped 3 plugins.
再次检查插件列表
[root@mes01 ~]# rabbitmq-plugins listListing plugins with pattern ".*" ... Configured: E = explicitly enabled; e = implicitly enabled | Status: * = running on rabbit@mes01 |/[ ] rabbitmq_amqp1_0 3.8.5[ ] rabbitmq_auth_backend_cache 3.8.5[ ] rabbitmq_auth_backend_http 3.8.5[ ] rabbitmq_auth_backend_ldap 3.8.5[ ] rabbitmq_auth_backend_oauth2 3.8.5[ ] rabbitmq_auth_mechanism_ssl 3.8.5[ ] rabbitmq_consistent_hash_exchange 3.8.5[ ] rabbitmq_event_exchange 3.8.5[ ] rabbitmq_federation 3.8.5[ ] rabbitmq_federation_management 3.8.5[ ] rabbitmq_jms_topic_exchange 3.8.5[ ] rabbitmq_management 3.8.5[ ] rabbitmq_management_agent 3.8.5[ ] rabbitmq_mqtt 3.8.5[ ] rabbitmq_peer_discovery_aws 3.8.5[ ] rabbitmq_peer_discovery_common 3.8.5[ ] rabbitmq_peer_discovery_consul 3.8.5[ ] rabbitmq_peer_discovery_etcd 3.8.5[ ] rabbitmq_peer_discovery_k8s 3.8.5[ ] rabbitmq_prometheus 3.8.5[ ] rabbitmq_random_exchange 3.8.5[ ] rabbitmq_recent_history_exchange 3.8.5[ ] rabbitmq_sharding 3.8.5[ ] rabbitmq_shovel 3.8.5[ ] rabbitmq_shovel_management 3.8.5[ ] rabbitmq_stomp 3.8.5[ ] rabbitmq_top 3.8.5[ ] rabbitmq_tracing 3.8.5[ ] rabbitmq_trust_store 3.8.5[ ] rabbitmq_web_dispatch 3.8.5[ ] rabbitmq_web_mqtt 3.8.5[ ] rabbitmq_web_mqtt_examples 3.8.5[ ] rabbitmq_web_stomp 3.8.5[ ] rabbitmq_web_stomp_examples 3.8.5
重置所有数据
[root@mes01 ~]# rabbitmqctl stop_appStopping rabbit application on node rabbit@mes01 ...[root@mes01 ~]# rabbitmqctl resetResetting node rabbit@mes01 ...[root@mes01 ~]#
# 查看所有用户rabbitmqctl list_users# 添加用户rabbitmqctl add_user username passWord# 修改用户密码rabbitmqctl change_password username password# 删除用户rabbitmqctl delete_user username# 设置用户权限rabbitmqctl set_permissions -p vhostpath username ".*" ".*" ".*"# 列表用户权限rabbitmqctl list_user_permissions username# 清除用户权限rabbitmqctl clear_permissions -p vhostspath username# 给用户设置标签rabbitmqctl set_user_tags username tag# 创建虚拟主机rabbitmqctl add_vhost vhostpath# 列表所有虚拟主机rabbitmqctl list_vhosts# 列表所有虚拟主机的权限rabbitmqctl list_permissions -p vhostpath# 删除虚拟主机rabbitmqctl delete_vhosts vhostspath
样例
列出所有用户-rabbitmqctl list_users
[root@mes01 ~]# rabbitmqctl list_usersListing users ...user tagsguest [administrator]root [administrator]
添加用户
[root@mes01 ~]# rabbitmqctl add_user test 123456Adding user "test" ...[root@mes01 ~]# rabbitmqctl list_usersListing users ...user tagsguest [administrator]test []root [administrator][root@mes01 ~]#
修改用户密码
root@mes01 ~]# rabbitmqctl change_password test 654321Changing password for user "test" ...
设置并查看权限
[root@mes01 ~]# rabbitmqctl set_permissions -p / test ".*" ".*" ".*"Setting permissions for user "test" in vhost "/" ...[root@mes01 ~]# rabbitmqctl list_user_permissions testListing permissions for user "test" ...vhost configure write read/ .* .* .*
设置用户标签并查看
root@mes01 ~]# rabbitmqctl set_user_tags test managementSetting tags for user "test" to [management] ...[root@mes01 ~]# rabbitmqctl list_usersListing users ...user tagsguest [administrator]test [management]root [administrator]
清除并查看权限
[root@mes01 ~]# rabbitmqctl clear_permissions -p / testClearing permissions for user "test" in vhost "/" ...[root@mes01 ~]# rabbitmqctl list_user_permissions testListing permissions for user "test" ...[root@mes01 ~]#
删除用户
[root@mes01 ~]# rabbitmqctl delete_user testDeleting user "test" ...[root@mes01 ~]# rabbitmqctl list_usersListing users ...user tagsguest [administrator]root [administrator]
创建虚拟主机并查看
[root@mes01 ~]# rabbitmqctl add_vhost /testAdding vhost "/test" ...[root@mes01 ~]# rabbitmqctl list_vhostsListing vhosts ...name/test/[root@mes01 ~]#
列出虚拟主机的权限
[root@mes01 ~]# rabbitmqctl list_permissions -p /Listing permissions for vhost "/" ...user configure write readroot .* .* .*test .* .* .*guest .* .* .*
删除虚拟主机并查看
[root@mes01 ~]# rabbitmqctl delete_vhost /testDeleting vhost "/test" ...[root@mes01 ~]# rabbitmqctl list_vhostsListing vhosts ...name/[root@mes01 ~]#
查看交换器
[root@os ~]# rabbitmqctl list_exchangesListing exchanges for vhost / ...name typeamq.fanout fanoutamq.rabbitmq.trace topicamq.headers headersamq.topic topicex.biz directamq.direct direct directamq.match headersex.wk direct[root@os ~]# rabbitmqctl list_exchanges --formatter pretty_tableListing exchanges for vhost / ...┌────────────────────┬─────────┐│ name │ type │├────────────────────┼─────────┤│ amq.fanout │ fanout │├────────────────────┼─────────┤│ amq.rabbitmq.trace │ topic │├────────────────────┼─────────┤│ amq.headers │ headers │├────────────────────┼─────────┤│ amq.topic │ topic │├────────────────────┼─────────┤│ ex.biz │ direct │├────────────────────┼─────────┤│ amq.direct │ direct │├────────────────────┼─────────┤│ │ direct │├────────────────────┼─────────┤│ amq.match │ headers │├────────────────────┼─────────┤│ ex.wk │ direct │└────────────────────┴─────────┘[root@os ~]#
查看绑定的列表
[root@os ~]# rabbitmqctl list_bindingsListing bindings for vhost /...source_name source_kind destination_name destination_kind routing_key arguments exchange qu.wk queue qu.wk []ex.wk exchange qu.wk queue rk.wq [][root@os ~]# rabbitmqctl list_bindings --formatter pretty_tableListing bindings for vhost /...┌─────────────┬─────────────┬──────────────────┬──────────────────┬─────────────┬───────────┐│ source_name │ source_kind │ destination_name │ destination_kind │ routing_key │ arguments │├─────────────┼─────────────┼──────────────────┼──────────────────┼─────────────┼───────────┤│ │ exchange │ qu.wk │ queue │ qu.wk │ │├─────────────┼─────────────┼──────────────────┼──────────────────┼─────────────┼───────────┤│ ex.wk │ exchange │ qu.wk │ queue │ rk.wq │ │└─────────────┴─────────────┴──────────────────┴──────────────────┴─────────────┴───────────┘
队列信息
rabbitmqctl list_queues [-p vhost] [[--offline] | [--online] | [--local]] [queueinfoitem ...]# 返回队列的详细信息。如果 "-p" 标志不存在,那么将返回默认虚拟主机的队列详细信息。"-p" 可以用来覆盖默认vhost。可以使用一下互斥选项之一,通过其状态或者位置过滤显示的队列。# [--offline] 表示仅仅列出当前不可用的持久队列(更具体地说,他们的主节点不是)# [--online] 表示列出当前可用的队列(他们的主节点是)# [--local] 表示仅仅列出那些主程序在当前节点上的队列# queueinfoitem参数用于指示要包括在结果中的哪些队列信息项。结果中的列顺序将与参数的顺序相匹配。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"# 如果没有指定queueinfoitem,那么将显示队列的名称(name)和深度(messages)
交换器信息
rabbitmqctl list_exchanges [-p vhost] [exchangeinfoitem ...]# 返回交换器的详细信息。如果 "-p" 标志不存在,那么将返回默认虚拟主机的交换器详细信息。"-p" 可以用来覆盖默认vhost。# exchangeinfoitem参数用于指示要包括在结果中的哪些交换器信息项。结果中的列顺序将与参数的顺序相匹配。exchangeinfoitem可以从以下列表中获取任何值:# name 表示交换器的名称# type 表示交换器类型(例如: direct/topic/fanout/headers)# durable 表示服务器重启之后,交换器是否存活# auto_delete 表示交换器不再使用时,是否被自动删除# internal 表示交换器是否是内部的,例如不能被客户端直接发布# arguments 表示交换器的参数# policy 表示引用在该交换器上的策略名称# 如果没有指定任何 exchangeinfoitem,那么该命令将显示交换器的名称(name)和类型(type)
绑定信息
rabbitmqctl list_bindings [-p vhost] [bindinginfoitem ...]# 返回绑定的详细信息。如果 "-p" 标志不存在,那么将返回默认虚拟主机的绑定详细信息。"-p" 可以用来覆盖默认vhost。# bindinginfoitem参数用于指示要包括在结果中的哪些绑定信息项。结果中的列顺序将与参数的顺序相匹配。bindinginfoitem可以从以下列表中获取任何值:# source_name 表示绑定附加到的消息源的名称# source_kind 表示绑定附加到的消息源的类型,目前通常交换器# destination_name 表示附加绑定到的消息目的地的名称# destination_kind 表示附加绑定到的消息目的地的类型# routing_key 表示绑定的routing key# arguments 表示绑定的参数# 如果没有指定任何的 bindinginfoitem ,那么将展示上述所有的参数# rabbitmqctl list_bindings -p /myvhost exchange_name queue_name# 上述命令,表示展示在 /myvhost 虚拟主机中的绑定的exchange名称和queue名称
连接信息
rabbitmqctl list_connections [connectioninfoitem ...]# 返回tcp/IP连接统计信息# connectioninfoitem 参数用于指示要包括在结果中的哪些连接信息项,结果中的列顺序将与参数的顺序相匹配。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 表示该连接被建立的日期和时间的时间戳格式# 如果没有指定任何connectioninfoitem,那么将展示:user/peer_host/peer_port/流量控制和内存块状态之后的时间
通道信息
rabbitmqctl list_channels [channelinfoitem ...]# 返回所有当前的通道的信息,通道即一个执行大多数AMQP命令的逻辑容器。这包括由普通AMQP连接的一部分通道、由各种插件和其他扩展程序创建的通道。# channelinfoitem 参数用于指示要包括在结果中的哪些连接信息项,结果中的列顺序将与参数的顺序相匹配。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# 如果没有指定任何 channelinfoitem 项,那么将展示 pid/user/consumer_count/messages_unacknowledged
来源地址:https://blog.csdn.net/bug_null/article/details/132512653
--结束END--
本文标题: RabbitMQ-常用命令
本文链接: https://lsjlt.com/news/383207.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0