注册 登录
  • 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!

RocketMQ 管理命令参考大全 sh mqadmin

JAVA相关 开心洋葱 2940次浏览 已收录 0个评论 手机上查看

RocketMQ 管理命令参考大全 sh mqadmin

1.1.1. 控制台使用

RocketMQ提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker等信息的管理;

l 登录控制台:

首先进入RocketMQ工程,进入/RocketMQ/bin

在该目录下有个mqadmin脚本

l 查看帮助:

mqadmin下可以查看有哪些命令

sh mqadmin

l 查看具体命令的使用

sh mqadmin help 命令名称

例如,查看updateTopic的使用

sh mqadmin helpupdateTopic

2.1.2. 详细命令

2.1.1.2.1. 创建Topic

指令updateTopic类路径com.alibaba.rocketmq.tools.command.topic.UpdateTopicSubCommand
参数是否必填说明
-b如果 -c为空,则必填broker地址,表示topic建在该broker
-c如果 -b为空,则必填cluster名称,表示topic建在该集群(集群可通过clusterList查询)
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
-p指定新topic的权限限制( W|R|WR )
-r可读队列数(默认为8)
-w可写队列数(默认为8)
-ttopic名称(名称只能使用字符 ^[a-zA-Z0-9_-]+$ )
举例在集群DefaultCluster上创建主题ZTEExample,nameserve地址为10.45.47.168:9876
sh mqadmin updateTopic –n 10.45.47.168 –c DefaultCluster –t ZTEExample

2.2.1.2.2. 删除Topic

指令deleteTopic类路径com.alibaba.rocketmq.tools.command.topic.DeleteTopicSubCommand
参数是否必填说明
-ccluster名称,表示删除某集群下的某个topic (集群可通过clusterList查询)
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
-ttopic名称(名称只能使用字符 ^[a-zA-Z0-9_-]+$ )
举例在集群DefaultCluster上删除主题ZTEExample,nameserve地址为10.45.47.168:9876
sh mqadmin deleteTopic –n 10.45.47.168:9876 –c DefaultCluster –t ZTEExample

2.3.1.2.3. 创建(修订)订阅组

指令updateSubGroup类路径com.alibaba.rocketmq.tools.command.consumer.UpdateSubGroupSubCommand
参数是否必填说明
-b如果 –c为空,则必填broker地址,表示订阅组建在该broker
-c如果 –b为空,则必填cluster名称,表示topic建在该集群(集群可通过clusterList查询)
-d是否容许广播方式消费
-g订阅组名
-i从哪个broker开始消费
-m是否容许从队列的最小位置开始消费,默认会设置为false
-q消费失败的消息放到一个重试队列,每个订阅组配置几个重试队列
-r重试消费最大次数,超过则投递到死信队列,不再投递,并报警
-s消费功能是否开启
-w发现消息堆积后,将Consumer的消费请求重定向到另外一台Slave机器
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.4.1.2.4. 删除订阅组配置

指令deleteSubGroup类路径com.alibaba.rocketmq.tools.command.consumer.DeleteSubscriptionGroupCommand
参数是否必填说明
-b如果 –c为空,则必填broker地址,表示订阅组建在该broker
-c如果 –b为空,则必填cluster名称,表示topic建在该集群(集群可通过clusterList查询)
-g订阅组名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.5.1.2.5. 更新Broker配置文件

指令updateBrokerConfig类路径com.alibaba.rocketmq.tools.command.broker.UpdateBrokerConfigSubCommand
参数是否必填说明
-b如果 –c为空,则必填broker地址,表示订阅组建在该broker
-c如果 –b为空,则必填cluster名称,表示topic建在该集群(集群可通过clusterList查询)
-kkey值
-vvalue值
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.6.1.2.6. 查看Topic列表信息

指令topicList类路径com.alibaba.rocketmq.tools.command.broker.UpdateBrokerConfigSubCommand
参数是否必填说明
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例nameserve地址为10.45.47.168:9876
sh mqadmin topicList –n 10.45.47.168:9876打印内容:

BenchmarkTest

%RETRY%simple-consumer-test

SELF_TEST_TOPICZTEExample注释:上述头三个主题是RocketMQ默认预先创建

2.7.1.2.7. 查看Topic路由信息

指令topicRoute类路径com.alibaba.rocketmq.tools.command.topic.TopicRouteSubCommand
参数是否必填说明
-ttopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查看主题ZTEExample的路由,nameserve地址为10.45.47.168:9876
sh mqadmin topicRoute –n 10.45.47.168:9876 –t ZTEExample_Crm打印内容:

{

“brokerDatas”:[{

“brokerAddrs”:{0:”10.45.47.168:10911″

},

“brokerName”:”crmdb”

}],

“queueDatas”:[{

“brokerName”:”crmdb”,

“perm”:6,

“readQueueNums”:8,

“writeQueueNums”:8

}]}

2.8.1.2.8. 查看Topic统计信息

指令topicStats类路径com.alibaba.rocketmq.tools.command.topic.TopicStatsSubCommand
参数是否必填说明
-ttopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查看主题ZTEExample的统计信息,nameserve地址为10.45.47.168:9876
sh mqadmin topicStats –n 10.45.47.168:9876 –t ZTEExample打印内容:(统计信息里包括有offset、最后更新时间)

#Broker Name #QID #Min Offset #Max Offset #Last Updated

crmdb 0 0 1 2014-02-10 11:37:44,977

crmdb 1 0 0

crmdb 2 0 0

crmdb 3 0 0

crmdb 4 0 0

crmdb 5 0 0

crmdb 6 0 0

crmdb 7 0 0

2.9.1.2.9. 查看Broker统计信息

指令brokerStats类路径com.alibaba.rocketmq.tools.command.broker.BrokerStatsSubCommand
参数是否必填说明
-bbroker地址
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查看broker(crmdb)的统计信息,broker地址为10.45.47.168:10911,nameserve地址为10.45.47.168:9876
sh mqadmin brokerStats –n 10.45.47.168:9876 –b 10.45.47.168:10911打印内容:

bootTimestamp : 1392003367470

brokerVersion : 29

brokerVersionDesc : V3_0_7

commitLogDiskRatio : 0.32690830974763857

commitLogMaxOffset : 217

commitLogMinOffset : 0

consumeQueueDiskRatio : 0.32690830974763857

dispatchMaxBuffer : 1

getFoundTps : 0.0 0.0 0.0

getMessageEntireTimeMax : 4

getMissTps : 0.0 0.0 0.0

getTotalTps : 0.0 0.0 0.0

getTransferedTps : 0.0 0.0 0.0

msgGetTotalTodayMorning : 0

msgGetTotalTodayNow : 1

msgGetTotalYesterdayMorning : 0

msgPutTotalTodayMorning : 0

msgPutTotalTodayNow : 1

msgPutTotalYesterdayMorning : 0

putMessageAverageSize : 217.0

putMessageDistributeTime :

0(0.0%)

1(100.0%)

0(0.0%)

0(0.0%)

0(0.0%)

0(0.0%)

0(0.0%)

putMessageEntireTimeMax : 6

putMessageSizeTotal : 217

putMessageTimesTotal : 1

putTps : 0.0 0.0 0.0

runtime : [ 0 days, 3 hours, 21 minutes, 1 seconds ]

sendThreadPoolQueueCapacity : 100000

sendThreadPoolQueueSize : 0

2.10.1.2.10. 根据消息ID查询消息

指令queryMsgById类路径com.alibaba.rocketmq.tools.command.message.QueryMsgByIdSubCommand
参数是否必填说明
-imsgId
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询msgId= 0A2D2FA800002A9F0000000000000000的消息,nameserve地址为10.45.47.168:9876
sh mqadmin queryMsgById –n 10.45.47.168:9876 –i 0A2D2FA800002A9F0000000000000000打印内容:Topic: ZTEExampleTags: [SimpleTest]Keys: [SimpleTest-1]Queue ID: 0Queue Offset: 0CommitLog Offset: 0Born Timestamp: 2014-02-26 14:49:10,875Store Timestamp: 2014-02-26 14:48:44,840Born Host: 10.45.46.229:4231Store Host: 10.45.47.168:10911System Flag: 0Properties: {TAGS=SimpleTest, KEYS=SimpleTest-1, WAIT=true}Message Body Path: /tmp/rocketmq/msgbodys/0A2D2FA800002A9F0000000000000000

2.11.1.2.11. 根据消息Key查询消息

指令queryMsgByKey类路径com.alibaba.rocketmq.tools.command.message.QueryMsgByKeySubCommand
参数是否必填说明
-f被查询消息的截止时间
-kmsgKey
-tTopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询Topic= ZTEExample下key= SimpleTest-1的消息,nameserve地址为10.45.47.168:9876
sh mqadmin queryMsgByKey -n 10.45.47.168:9876 -t ZTEExample -k SimpleTest-1打印内容:#Message ID #QID #Offset0A2D2FA800002A9F0000000000000000 0 0

2.12.1.2.12. 根据Offset查询消息

指令queryMsgByOffset类路径com.alibaba.rocketmq.tools.command.message.QueryMsgByOffsetSubCommand
参数是否必填说明
-bBroker名称,表示订阅组建在该broker(这里需要注意填写的是broker的名称,不是broker的地址,broker名称可以在clusterList查到)
-iquery队列id
-ooffset值
-ttopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询brokerName=crm-168,Topic= ZTEExample的第1个队列下offset=0的消息,nameserve地址为10.45.47.168:9876
sh mqadmin queryMsgByOffset -n 10.45.47.168:9876 -b crm-168 -i 0 -t ZTEExample -o 0打印内容:Topic: ZTEExampleTags: [SimpleTest]Keys: [SimpleTest-1]Queue ID: 0Queue Offset: 0CommitLog Offset: 0Born Timestamp: 2014-02-26 14:49:10,875Store Timestamp: 2014-02-26 14:48:44,840Born Host: 10.45.46.229:4231Store Host: 10.45.47.168:10911System Flag: 0Properties: {TAGS=SimpleTest, KEYS=SimpleTest-1, WAIT=true}Message Body Path: /tmp/rocketmq/msgbodys/0A2D2FA800002A9F0000000000000000

2.13.1.2.13. 查询Producer的网络连接

l 该命令只打印当前与cluster连接的producer网络连接信息

指令producerConnection类路径com.alibaba.rocketmq.tools.command.connection.ProducerConnectionSubCommand
参数是否必填说明
-g生产者所属组名
-ttopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询当前属于group(生产者组)=simple-producer-test的生产者到topic=ZTEExample的网络连接,nameserve地址为10.45.47.168:9876
sh mqadmin producerConnection -n 10.45.47.168:9876 -g simple-producer-test -t ZTEExample打印内容:0001 [email protected]0c 10.45.46.229:4332 JAVA V3_0_7

2.14.1.2.14. 查询Consumer的网络连接

l 该命令只打印当前与cluster连接的consumer网络连接信息

指令consumerConnection类路径com.alibaba.rocketmq.tools.command.connection.ConsumerConnectionSubCommand
参数是否必填说明
-g消费者所属组名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询当前属于group(消费者组)=simple-consumer-test的消费者的网络连接,nameserve地址为10.45.47.168:9876
sh mqadmin consumerConnection -n 10.45.47.168:9876 -g simple-consumer-test打印内容:001 [email protected]ae 10.45.46.229:4355 JAVA V3_0_7 Below is subscription:001 Topic: ZTEExample SubExpression: * ConsumeType: CONSUME_ACTIVELYMessageModel: CLUSTERINGConsumeFromWhere: CONSUME_FROM_LAST_OFFSET

2.15.1.2.15. 查看订阅组消费状态

指令consumerProgress类路径com.alibaba.rocketmq.tools.command.consumer.ConsumerProgressSubCommand
参数是否必填说明
-g消费者所属组名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询当前属于group(消费者组)=simple-consumer-test的订阅状态,nameserve地址为10.45.47.168:9876
sh mqadmin consumerProgress -n 10.45.47.168:9876 -g simple-consumer-test打印内容:#Topic #Broker Name #QID #Broker Offset #Consumer Offset #DiffZTEExample crm-168 0 2 2 0ZTEExample crm-168 1 0 0 0ZTEExample crm-168 2 0 0 0ZTEExample crm-168 3 0 0 0ZTEExample crm-168 4 0 0 0ZTEExample crm-168 5 0 0 0ZTEExample crm-168 6 0 0 0ZTEExample crm-168 7 0 0 0 Consume TPS: 0Diff Total: 0

2.16.1.2.16. 查看集群消息

指令clusterList类路径com.alibaba.rocketmq.tools.command.cluster.ClusterListSubCommand
参数是否必填说明
-m打印更多信息 (增加打印出如下信息 #InTotalYest, #OutTotalYest, #InTotalToday ,#OutTotalToday)
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询当前集群状态,nameserve地址为10.45.47.168:9876
sh mqadmin clusterList -n 10.45.47.168:9876打印内容:#Cluster Name #Broker Name #BID #Addr #Version #InTPS #OutTPSCRM crm-168 0 10.45.47.168:10911 V3_0_7 0.00 0.00CRM crm-181 0 10.45.47.181:10911 V3_0_7 0.00 0.00 sh mqadmin clusterList -n 10.45.47.168:9876 –m#Cluster Name #Broker Name #InTotalYest #OutTotalYest #InTotalToday #OutTotalTodayCRM crm-168 0 0 2 3CRM crm-181 0 0 0 0

2.17.1.2.17. 添加(更新)KV配置信息

指令updateKvConfig类路径com.alibaba.rocketmq.tools.command.namesrv.UpdateKvConfigCommand
参数是否必填说明
-kkey值
-vvalue值
-sNamespace值
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.18.1.2.18. 删除KV配置信息

指令deleteKvConfig类路径com.alibaba.rocketmq.tools.command.namesrv.DeleteKvConfigCommand
参数是否必填说明
-kkey值
-sNamespace值
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.19.1.2.19. 添加(更新)Project group配置信息

指令updateProjectGroup类路径com.alibaba.rocketmq.tools.command.namesrv.UpdateProjectGroupCommand
参数是否必填说明
-i服务器ip
-pproject group名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.20.1.2.20. 删除Projectgroup配置信息

指令deleteProjectGroup类路径com.alibaba.rocketmq.tools.command.namesrv.DeleteProjectGroupCommand
参数是否必填说明
-i服务器ip
-pproject group名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.21.1.2.21. 取得Projectgroup配置信息

指令getProjectGroup类路径com.alibaba.rocketmq.tools.command.namesrv.GetProjectGroupCommand
参数是否必填说明
-i服务器ip
-pproject group名
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.22.1.2.22. 设置消费进度

l 根据时间来设置消费进度,设置之前要关闭这个订阅组的所有consumer,设置完再启动,方可生效

指令resetOffsetByTime类路径com.alibaba.rocketmq.tools.command.offset.ResetOffsetByTimeSubCommand
参数是否必填说明
-f通过时间戳强制回滚(true|false),默认为true
-s时间戳(currentTimeMillis|yyyy-MM-dd#HH:mm:ss:SSS)
-g消费者所属组名
-ttopic名称
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.23.1.2.23. 清除特定Broker权限

指令wipeWritePerm类路径com.alibaba.rocketmq.tools.command.namesrv.WipeWritePermSubCommand
参数是否必填说明
-bbroker地址
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例

2.24.1.2.24. 获取Consumer消费进度

l 该命令只打印当前与cluster连接的consumer的消费进度

指令getConsumerStatus类路径com.alibaba.rocketmq.tools.command.offset.GetConsumerStatusCommand
参数是否必填说明
-g消费者所属组名
-t查询主题
-iConsumer客户端ip
-h打印帮助
-nnameserve服务地址列表,格式ip:port;ip:port;…
举例查询属于group(消费者组)=simple-consumer-test的消费者在Topic=ZTEExample上的消费状态,nameserve地址为10.45.47.168:9876
sh mqadmin getConsumerStatus -n 10.45.47.168:9876 -g simple-consumer-test -t ZTEExampleget consumer status from client. group=simple-consumer-test, topic=ZTEExample, originClientId=#clientId #brokerName #queueId #[email protected] crm-168 4 [email protected] crm-168 0 [email protected] crm-168 3 [email protected] crm-168 1 [email protected] crm-168 5 [email protected] crm-168 6 [email protected] crm-168 7 [email protected] crm-168 2 0


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明RocketMQ 管理命令参考大全 sh mqadmin
喜欢 (0)
[开心洋葱]
分享 (0)
关于作者:
开心洋葱,开心洋葱头,水墨

您必须 登录 才能发表评论!

……
加载中……