全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
业务实时监控服务 ARMS

通用查询数据集接口

更新时间:2018-03-27 11:31:14

描述

ARMSQueryDataSet 主要用于查询 ARMS 中的数据集的数据。

API 名称 Request Response
ARMSQueryDataSet ARMSQueryDataSetRequest ARMSQueryDataSetResponse

请求参数

请求参数包含 POP 公共参数和业务参数两个部分。公共请求参数请参考 POP 参数说明

业务参数

阿里云将用户所有的请求参数封装在一个 Request 中,返回一个 Response。

ARMSQueryDataSetRequest 包含 11 个字段:

字段名称 字段类型 设置方法 字段含义 是否必选 备注
datasetId Long setDatasetId 数据集 ID
minTime Long setMinTime 查询数据的起始时间
maxTime Long setMaxTime 查询数据的截止时间
intervalInSec Integer setIntervalInSec 数据片的时间间隔
measures List[String] setMesures 查询指标列表 列表最长支持 3 个元素。如果为空,则返回所有指标数据
dimensions List[Dimension] setDimensions 查询维度列表 下钻数据集字段,dimensions 为复合参数,列表最长支持 3 个元素。Dimension 的定义见下一说明列表
requiredDims List[Dimension] setRequiredDims 通用数据集的必选维度 通用数据集字段
optionalDims List[Dimension] setOptionalDims 通用数据集的可选维度 通用数据集字段
orderByKey String setOrderByKey orderBy 指标
limit Integer setLimit 限制的返回个数
reduceTail Boolean setReduceTail 是否把 limit 之外的数据合并到一起
  • 当需要查询的数据集是下钻类型时,维度使用 dimensions。
  • 当需要查询的数据集是通用类型时,维度使用 requiredDims 和 optionalDims。
  • 下钻数据集和通用数据集的区别请参考文档创建数据集

Dimensions 复合字段

字段名称 字段类型 设置方法 字段含义 备注
key String setKey 维度名称 如:区域
value String setValue 维度值 如:北京
type String setType 取值方式 分别为:STATIC, ALL, DISABLED
  • 当您想选择该维度下面的所有的维度值时,type 设置为 ALL,value 为 null。
  • 当您想选择该维度下面的其中某个维度值时,type 设置为 STATIC(静态值),value 为输入维度值。
  • 当您不想选择该维度时候,可以直接忽略,或者将 type 设置为 DISABLED。

返回参数

返回值为 JSON 串形式返回,可通过 ARMSQueryDataSetResponse.getdata() 获取。

ARMSQueryDataSetResponse 主要字段有:

字段名称 字段含义 备注
dimensions 时序数据的维度值 当该维度选为 ALL 时,会有多个
measures 数据点中的指标
resultSize 返回的所有数据点个数
dimData 多条时序数据

使用示例

  1. 在不选择维度情况下,查询所有数据的汇总信息:

    1. #!/usr/bin/env python
    2. #encoding: utf-8
    3. from aliyunsdkcore import client
    4. from aliyunsdkarms.request.v20161125 import ARMSQueryDataSetRequest
    5. import time
    6. def main():
    7. #设置阿里云公共参数, 请参考本页顶部[POP参数说明]。
    8. #其中Region暂时仅支持'cn-hangzhou'和'cn-beijing'
    9. region = 'cn-hangzhou'
    10. #AK/SK设置,暂时只阿里云主账号的AK/SK
    11. accessKeyID = 'xxx'
    12. accessKeySecret = 'xxx'
    13. #构造client
    14. clt = client.AcsClient(accessKeyID, accessKeySecret, region)
    15. #构造业务参数
    16. armsQueryDataSetRequest = ARMSQueryDataSetRequest.ARMSQueryDataSetRequest()
    17. #填写正确的数据集ID,在在ARMS数据集管理页面确定
    18. armsQueryDataSetRequest.set_DatasetId(12221L)
    19. #设置查询间隔时间,在本例中为60秒
    20. armsQueryDataSetRequest.set_IntervalInSec(60)
    21. #设置查询时间的间隔,本例中为最近一个小时,注意单位为毫秒,必须为整型
    22. armsQueryDataSetRequest.set_MinTime(int(time.time()*1000)-3600000)
    23. armsQueryDataSetRequest.set_MaxTime(int(time.time()*1000))
    24. // ****后续的2、3、4示例代码插入此处****
    25. #发送请求
    26. armsQueryDataSetResponse = clt.do_action(armsQueryDataSetRequest)
    27. #打印请求结果
    28. print armsQueryDataSetResponse
    29. if __name__ == '__main__':
    30. main()
  2. 选择第一个维度,将维度值设为空字符串(“”),类型为 ALL(全部)。结果返回按第一维度 group 的数据:

    1. dimensions = [{"Key":"区域","Value":"", "Type":"ALL"}]
    2. armsQueryDataSetRequest.set_Dimensionss(dimensions)
  3. 选择第一个维度,将维度值设为固定值,如 hangzhou,类型为 STATIC(固定值)。结果返回按第一维度的 hangzhou 数据:

    1. dimensions = [{"Key":"区域","Value":"hangzhou", "Type":"STATIC"}]
    2. armsQueryDataSetRequest.set_Dimensionss(dimensions)
  4. 选择要查询的指标列表,返回结果只返回您指定的指标:

    1. measures = ["COUNT__line"]
    2. armsQueryDataSetRequest.set_Measuress(measures)
本文导读目录