依赖引用
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-tools</artifactId>
<version>4.7.0</version>
</dependency>
接口调用
@Value("${rocketmq.name-server}")
private String nameServer;
private DefaultMQAdminExt mqAdminExt;
@PostConstruct
public void init() throws MQClientException {
mqAdminExt = new DefaultMQAdminExt();
mqAdminExt.setNamesrvAddr(nameServer);
mqAdminExt.start();
}
@PreDestroy
public void shutdown() {
if (mqAdminExt != null) {
mqAdminExt.shutdown();
}
}
/**
* 查询队列积压
*
* @return
* @throws Exception
*/
@Override
public String getRocketMqDelay() throws Exception {
String group = "XXX_Consumer";
ConsumeStats consumeStats = mqAdminExt.examineConsumeStats(group);
Map<String, Object> result = new HashMap<>();
result.put("totalDiff", consumeStats.computeTotalDiff());
result.put("consumeTps", consumeStats.getConsumeTps());
String response = JSONUtil.toJsonStr(result);
System.out.println("group: " + group + ", response: " + response);
return response;
}
返回结果
group: XXX_Consumer, response: {"totalDiff":4553,"consumeTps":0}