1.1.控制台使用
RocketMQ 提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker 等信息的管理
登录控制台
首先进入RocketMQ 工程,进入/RocketMQ/bin
在该目录下有个mqadmin 脚本
查看帮助
在mqadmin 下可以查看有哪些命令
sh mqadmin
查看具体命令的使用(以具体实现类为准)
sh mqadmin help 命令名称
例如,查看updateTopic 的使用
sh mqadmin help updateTopic
C.详细命令
0.1. help
类路径com.alibaba.rocketmq.tools.command.MQAdminStartup
Option
OptionValue
Detail
-h
help
Print help
e.g. sh mqadmin
e.g. sh mqadmin topicList -h
e.g. sh mqadmin help topicList
0.2. System.setProperty(MixAll.NAMESRV_ADDR_PROPERTY, namesrvAddr);
类路径com.alibaba.rocketmq.tools.command.MQAdminStartup
Option
OptionValue
Detail
-n
namesrvAddr
Name server address list, eg: 192.168.0.1:9876;192.168.0.2:9876
备注:-n 指定多个地址时需要用双引号,如 -n “10.128.2.22:9876;172.16.50.238:9876”
原因:linux系统下分号连接两个命令,如果不使用会导致以下错误
错误:-bash: 172.16.50.238:9876: command not found
1.1. Fetch all topic list from name server
指令 topicList
类路径 com.alibaba.rocketmq.tools.command.topic.TopicListSubCommand
Option
OptionValue
Detail
-c
clusterModel
clusterModel
e.g. sh mqadmin topicList -c -n 172.16.50.238:9876
执行结果:
#Cluster Name #Topic #Consumer Group
DefaultCluster MMSI_TOPIC MMSI_LOGONCONSUMER_GROUP
DefaultCluster BenchmarkTest
DefaultCluster OFFSET_MOVED_EVENT __MONITOR_CONSUMER
DefaultCluster TopicTest
DefaultCluster broker-a
DefaultCluster TBW102
DefaultCluster SELF_TEST_TOPIC
DefaultCluster DefaultCluster
1.2. Update or create topic
指令 updateTopic
类路径 com.alibaba.rocketmq.tools.command.topic.UpdateTopicSubCommand
Option
OptionValue
Detail
-b
brokerAddr
create subscription group to which broker
-c
clusterName
create subscription group to which cluster
-t
topic
topic name
-r
readQueueNums
set read queue nums
-w
writeQueueNums
set write queue nums
-p
perm
set topic's permission(2|4|6), intro[2:R; 4:W; 6:RW]
-o
order
set topic's order(true|false
-u
unit
is unit topic (true|false
-s
hasUnitSub
has unit sub (true|false
e.g. sh mqadmin updateTopic -b 172.16.50.238:10911 -t test
运行结果:
create topic to 172.16.50.238:10911 success.
TopicConfig [topicName=test, readQueueNums=8, writeQueueNums=8, perm=RW-, topicFilterType=SINGLE_TAG, topicSysFlag=0, order=false]
查询brokerAddr 见指令 clusterList
查询 topic 见指令 topicList
-b -c 二选一,见具体类文件。
1.3. Delete topic from broker and NameServer.
指令 deleteTopic
类路径 com.alibaba.rocketmq.tools.command.topic.DeleteTopicSubCommand
Option
OptionValue
Detail
-t
topic
topic name
-c
clusterName
delete topic from which cluster
查询clusterName 见指令 clusterList
查询 topic 见指令 topicList
e.g. sh mqadmin deleteTopic -t test -c DefaultCluster -n 172.16.50.238:9876
执行结果:
delete topic [test] from cluster [DefaultCluster] success.
delete topic [test] from NameServer success.
1.4. Examine topic route info
指令 topicRoute
类路径 com.alibaba.rocketmq.tools.command.topic.TopicRouteSubCommand
Option
OptionValue
Detail
-t
topic
topic name
e.g. sh mqadmin topicRoute -t TopicTest -n 172.16.50.238:9876
执行结果:
{
"brokerDatas":[
{
"brokerAddrs":{0:"172.16.50.238:10911"
},
"brokerName":"broker-a"
}
],
"filterServerTable":{},
"queueDatas":[
{
"brokerName":"broker-a",
"perm":6,
"readQueueNums":4,
"topicSynFlag":0,
"writeQueueNums":4
}
]
}
1.5. Examine topic Status info
指令 topicStatus
类路径com.alibaba.rocketmq.tools.command.topic.TopicStatusSubCommand
Option
OptionValue
Detail
-t
topic
topic name
e.g. sh mqadmin topicStatus -t TopicTest -n 172.16.50.238:9876
#Broker Name #QID #Min Offset #Max Offset #Last Updated
broker-a 0 0 3275 2015-05-06 13:06:56,990
broker-a 1 0 3270 2015-05-06 13:00:01,439
broker-a