OnsConsumerConnection 接口用于查询指定订阅组(CID)下当前客户端的连接情况。
使用场景
一般用于判断指定 CID 的消费者是否在线,并获取详细的客户端连接的列表。
请求参数列表
名称 类型 是否必须 描述
OnsRegionId String 是 当前查询 MQ 所在区域,可以通过 ONSRegionList 方法获取
OnsPlatform String 否 该请求来源,默认是从 POP 平台
PreventCache Long 是 用于 CSRF 校验,设置为系统当前时间即可
ConsumerId String 是 需要查询的消费端 CID
返回参数列表
名称 类型 描述
RequestId String 为公共参数,每个请求独一无二
HelpUrl String 帮助链接
Data List(ConnectionDo) 指定 Consumer 的连接信息
ConnectionDo 数据结构
成员 类型 描述
ClientId String 消费实例的 ID
ClientAddr String 该消费实例的地址和端口
Language String 消费端语言
Version String 消费端版本
相关 API
OnsConsumerStatus:消费者状态查询
OnsConsumerAccumulate:消费堆积查询
使用示例
public static void main(String []args) {
String regionId = "cn-hangzhou";
String accessKey = "XXXXXXXXXXXXXXXXX";
String secretKey = "XXXXXXXXXXXXXXXXX";
String endPointName ="cn-hangzhou";
String productName ="Ons";
String domain ="ons.cn-hangzhou.aliyuncs.com";
/**
*根据自己需要访问的区域选择Region,并设置对应的接入点
*/
try {
DefaultProfile.addEndpoint(endPointName,regionId,productName,domain);
} catch (ClientException e) {
e.printStackTrace();
}
IClientProfile profile= DefaultProfile.getProfile(regionId,accessKey,secretKey);
IAcsClient iAcsClient= new DefaultAcsClient(profile);
OnsConsumerGetConnectionRequest request = new OnsConsumerGetConnectionRequest();
/**
*ONSRegionId是指你需要API访问MQ哪个区域的资源.
*该值必须要根据OnsRegionList方法获取的列表来选择和配置,因为OnsRegionId是变动的,不能够写固定值
*/
request.setOnsRegionId("daily");
request.setPreventCache(System.currentTimeMillis());
request.setAcceptFormat(FormatType.JSON);
request.setConsumerId("RTDSQ_1013_GROUP");
try {
OnsConsumerGetConnectionResponse response=iAcsClient.getAcsResponse(request);
List<OnsConsumerGetConnectionResponse.Data.ConnectionDo> connectionDoList=response.getData().getConnectionList();
for(OnsConsumerGetConnectionResponse.Data.ConnectionDo connectionDo:connectionDoList){
System.out.println(connectionDo.getClientId()+" "+
connectionDo.getClientAddr()+" "+
connectionDo.getLanguage()+" "+
connectionDo.getVersion());
}
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。