498
阿里云
ARMS Open API 说明__API 参考_业务实时监控服务 ARMS-阿里云
Open API 调用过程
Open API 底层通过 HTTP 接口提供服务,用户调用 Open API 的 SDK,发出 HTTP 请求到应用网关 POP,再由 POP 将请求转发给 ARMS 的后端服务去执行。用户将参数封装到每个请求中,每个请求即对应一个方法。执行的结果放在 response 中。
注意:因为 POP 网关是面对公网环境提供服务的,因此使用 Open API 的前提是,客户端需要能够访问公网服务。否则会提示服务无法连接。
Open API 调用说明
客户端依赖
公测期间,ARMS Open API 的 SDK 获取方法有2种,一种是下载 SDK 源码,编译后加入到本地的 Maven 仓库中,另一种是下载打包好的 JAR 包,直接导入工程中。
(1)下载 SDK 源码
<dependencies>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-arms</artifactId>
<version>2.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>2.2.0</version>
</dependency>
</dependencies>
其中 aliyun-java-sdk-arms 的包目前还没有部署到软件仓库中,所以是从官网上下载 SDK 到本地,编译部署到本地的软件仓库中。SDK 的源码下载链接
(2)下载 JAR 包其中 aliyun-java-sdk-arms 的 JAR 包是从官网上下载 SDK 到本地。SDK的Jar包下载链接。
创建 ACS 客户端说明
String accessKeyID = "XXX";
String accessKeySecret = "XXX";
String region="XXX";
String endPointName ="XXX";
String productName = "XXX";
String domain = "XXX";
IClientProfile profile = DefaultProfile.getProfile(region, accessKeyID, accessKeySecret);
DefaultProfile.addEndpoint(endPointName,region,productName,domain);
ArmsQueryDataSetRequest armsQueryDataSetRequest = new ArmsQueryDataSetRequest();
armsQueryDataSetRequest.setXXX(...);
armsQueryDataSetRequest.setXXX(...);
IAcsClient client = new DefaultAcsClient(profile);
ArmsQueryDataSetResponse armsQueryDataSetResponse = client.getAcsResponse(armsQueryDataSetRequest);
String responseJson = armsQueryDataSetResponse.getdata()
参数说明
pop 参数说明
- region,指的是 API 的网关所在区域,目前支持的有 cn-beijing,cn-hangzhou,cn-qingdao,cn-shenzhen
- accessKey,指的是用户在阿里云官网上获取的 AK
- secretKey,指的是用户在阿里云官网上获得的 SK
- endPointName,接入点名称,例如 cn-hangzhou
- productName,Open API 的产品名称,直接写 ARMS 即可
- domain,目前填写 arms.aliyuncs.com,后续会有扩充
区域名称 | RegionId |
---|---|
公有云北京 | cn-beijing |
公有云青岛 | cn-qingdao |
公有云杭州 | cn-hangzhou |
公有云深圳 | cn-shenzhen |
业务参数说明
阿里云将用户所有的请求参数封装在一个 Request 中,返回一个 Response。目前对外开放的 API 有且就有一个:
- 查询用户数据集
API 功能 | Request | Response |
---|---|---|
ArmsQueryDataSet | ArmsQueryDataSetRequest | ArmsQueryDataSetResponse |
业务参数详细说明
ArmsQueryDataSetRequest 包含6个字段:
字段名称 | 字段类型 | 设置方法 | 字段含义 | 是否必选 | 备注 |
---|---|---|---|---|---|
datasetId | Long | setDatasetId | 数据集ID | 是 | |
minTime | Long | setMinTime | 查询数据的起始时间 | 是 | |
maxTime | Long | setMaxTime | 查询数据的截止时间 | 是 | |
intervalInSec | Integer | setIntervalInSec | 数据片的时间间隔 | 是 | |
dimensions | List[Dimension] | setDimensions | 查询维度列表 | 否 | Dimensions为复合参数,列表最长支持3个元素。如果为空,则按第一个维度查询数据 |
measures | List[String] | setMesures | 查询指标列表 | 否 | 列表最长支持3个元素。如果为空,则返回所有指标数据 |
Dimensions 复合字段说明
字段名称 | 字段类型 | 设置方法 | 字段含义 | 备注 |
---|---|---|---|---|
key | String | setKey | 维度名称 | 如:区域 |
value | String | setValue | 维度值 | 如:北京 |
返回参数ArmsQueryDataSetResponse说明:
返回值为 JASON 串形式返回,可通过ArmsQueryDataSetResponse.getdata()获取
完整使用示例
public class TestArmsQueryDataSet {
public static void main(String[] args) throws ClientException, InterruptedException {
//设置阿里云公共参数
String accessKeyID = "XXX";
String accessKeySecret = "XXX";
String region = "XXX";
IClientProfile profile = DefaultProfile.getProfile(region, accessKeyID, accessKeySecret);
DefaultProfile.addEndpoint(endPointName,region,productName,domain);
//设置业务参数
ArmsQueryDataSetRequest armsQueryDataSetRequest = new ArmsQueryDataSetRequest();
armsQueryDataSetRequest.setDatasetId(XXX);
armsQueryDataSetRequest.setIntervalInSec(XXX);
armsQueryDataSetRequest.setMinTime(XXX);
armsQueryDataSetRequest.setMaxTime(XXX);
Dimensions dimensions = new Dimensions();
dimensions.setkey("XXX");
dimensions.setvalue("XXX");
List<Dimensions> dimensionss = new ArrayList<Dimensions>();
dimensionss.add(dimensions);
List<String> measuress = new ArrayList<String>();
measuress.add("XXX");
measuress.add("XXX");
armsQueryDataSetRequest.setDimensionss(dimensionss);
armsQueryDataSetRequest.setMeasuress(measuress);
IAcsClient client = new DefaultAcsClient(profile);
try {
//发送请求
ArmsQueryDataSetResponse armsQueryDataSetResponse = client.getAcsResponse(armsQueryDataSetRequest);
//获取并打印请求结果
System.out.println(armsQueryDataSetResponse.getdata());
} catch (ClientException e) {
e.printStackTrace();
}
}
}
最后更新:2016-11-25 11:39:29
上一篇:
联系人管理__管理系统配置_用户指南_业务实时监控服务 ARMS-阿里云
下一篇:
日志清洗最佳实践__最佳实践_业务实时监控服务 ARMS-阿里云
子账号授权准备__日志管理使用帮助_控制台使用帮助_消息服务-阿里云
运维和运营__产品简介_推荐引擎-阿里云
获取产品类型信息__接口列表_服务器端API_阿里云物联网套件-阿里云
Docker镜像制作__Docker_操作指南_批量计算-阿里云
审核失败 - 主域名不能为空__常见问题_产品常见问题_证书服务-阿里云
ChangePassword__用户管理接口_RAM API文档_访问控制-阿里云
查询作业详情__作业_API参考_E-MapReduce-阿里云
权限点划分__数据开发手册_用户操作指南_大数据开发套件-阿里云
初始化__Android SDK_SDK使用手册_消息服务-阿里云
授权服务角色读日志__常见问题_产品使用问题_日志服务-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云