监控数据查询

最近更新时间:2021-01-22 10:57:21

接口描述

本接口用于查询指定时间区间的监控数据,可用于观察域名访问变化情况。
接口请求域名:dsa.api.qcloud.com
接口名:GetDsaStatistics

注意:

  1. 该接口调用频次上限为100次/分钟,请勿高频调用。
  2. 可一次查询多个项目或多个域名的监控明细数据。
  3. 可一次查询多个监控指标的明细数据。
  4. 支持最长查询时间跨度90天。

支持查询的监控指标说明

统计指标 指标名称 指标说明
访问流量 flux 查询域名访问流量监控数据,单位:Byte
访问带宽 bandwidth 查询域名访问带宽监控数据,单位:bps
请求次数 request 查询域名访问次数监控数据,单位:次数
访问延时 delay 查询域名平均访问延时,单位:ms
状态码 200、400、500等 查询域名状态码监控数据,单位:次数

输入参数

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,详情请参见 公共请求参数 页面,此接口的 Action 字段为GetDsaStatistics

参数 必选 类型 取值示例 描述
metrics String ["flux","request"] 统计指标,可一次提交多个查询指标,按 JSON 格式提交
projects Unsigned [1001853] 项目ID列表,查看项目ID
按 JSON 格式提交
hosts String ["test.qcloud.com"] 域名列表,当根据域名查询数据时使用,按 JSON 格式提交
startDate String 2018-04-19 开始时间,默认为查询当日日期
格式:YY-MM-DD
endDate String 2018-04-20 结束时间,默认为查询当日日期
格式:YY-MM-DD
granularity Unsigned 15 查询时间粒度(分钟),详情请参见查询时间粒度规则
注意:

  1. 未指定查询目标时,默认查询账号下全部域名的合并统计数据。
  2. 当查询多个项目或多个域名时,为了防止查询参数过长导致 URL 越界,建议尽量采用 POST 方式提交请求。

查询时间粒度规则

起止时间跨度 默认粒度 支持查询时间粒度
1 天 1 1,5,15,30,60,120,240,1440
2 ~ 3 天 15 15,30,60,120,240,1440
4 ~ 7 天 30 30,60,120,240,1440
8 ~ 90 天 60 60,120,240,1440

数据汇总说明:

  1. 监控数据每1分钟为一个基本数据采样点。
  2. 访问流量、访问次数和状态码监控数据按照时间累加合并。
  3. 访问延时按照平均数合并。
  4. 时间粒度为5分钟的访问带宽,以1分钟粒度带宽为样本值,取5分钟内的平均带宽值。
  5. 时间粒度大于5分钟的访问带宽,以5分钟粒度带宽为样本值,取最大带宽值。

输出参数

参数 类型 描述
code Int 公共错误码
0:表示成功
其他值:表示失败
详情请参见错误码页面的 公共错误码
message String 模块错误信息描述,与接口相关
codeDesc String 英文错误信息,或业务侧错误码
data Array 详细查询数据信息,详情请参见 data 字段说明
注意:

  1. 当未指定查询目标时,默认按照账号维度返回全部域名合并的监控明细数据。
  2. 当指定查询域名或查询项目时,按域名维度返回每个域名的监控明细数据。

data 字段说明

参数 数值类型 描述
datetime String 数据时间刻度,如:2018-04-19 01:00:00
bandwidth Unsigned 查询指标包含带宽时返回该字段,数据单位:bps
flux Unsigned 查询指标包含流量时返回该字段,数据单位:byte
request Unsigned 查询指标包含请求次数时返回该字段,数据单位:次数
delay Unsigned 查询指标包含访问延时时返回该字段,数据单位:ms
状态码 Unsigned 查询指定状态码的响应次数,数据单位:次数

示例代码

查询账号带宽监控数据

需求说明

查询账号下全部域名2018-04-19的带宽监控数据,查询时间粒度60分钟。

GET 请求

GET 请求需要将所有参数都加在 URL 后:

https://dsa.api.qcloud.com/v2/index.php?
Action=GetDsaStatistics
&SecretId=XXXXXXXXXXXXXXXXXXXXXXXXXXX
&Timestamp=1524279600
&Nonce=123456789
&Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
&metrics=["bandwidth"]
&startDate=2018-04-19
&endDate=2018-04-19
&granularity=60
注意:

为了防止查询参数过长,导致 URL 越界,该接口默认采用 POST 方式提交查询请求。

POST 请求

POST 请求时,参数填充在 HTTP Request-body 中,请求地址:

https://dsa.api.qcloud.com/v2/index.php  

参数支持 form-data、x-www-form-urlencoded 等格式,参数数组如下:

array (
'Action' => 'GetDsaHostLogs',
'SecretId' => 'SecretId',
'Timestamp' => 1524279600,
'Nonce' => 123456789,
'Signature' => 'Signature',
'metrics' => '["bandwidth"]',
'startDate' => 2018-04-19,
'endDate' => 2018-04-19,
'granularity' => 60
)

返回结果示例

查询成功

{
"code": 0,
"message": "",
"codeDesc": "Success",
"data": [
    {
           "datetime": "2018-04-19 00:00:00",
           "bandwidth": 589746515
       },
       {
           "datetime": "2018-04-19 01:00:00",
           "bandwidth": 489746515
       },
       {
           "datetime": "2018-04-19 02:00:00",
           "bandwidth": 375489625
       },
        ......
       {
           "datetime": "2018-04-19 23:00:00",
           "bandwidth": 589746515
       }
]
}

查询失败

{
   "code": 4100,
   "message": "鉴权失败,请参考文档中鉴权部分。",
   "codeDesc": "AuthFailure"
}

查询指定域名的请求次数和访问流量监控数据

需求说明

查询域名test1.dsa.qcloud.comtest2.dsa.qcloud.com 在2018-04-19的请求数和流量监控数据,查询时间粒度5分钟。

GET 请求

GET 请求需要将所有参数都加在 URL 后:

https://dsa.api.qcloud.com/v2/index.php?
Action=GetDsaStatistics
&SecretId=XXXXXXXXXXXXXXXXXXXXXXXXXXX
&Timestamp=1524279600
&Nonce=123456789
&Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
&metrics=["request","flux"]
&hosts=["test1.dsa.qcloud.com","test2.dsa.qcloud.com"]
&startDate=2018-04-19
&endDate=2018-04-19
&granularity=5
注意:

当查询域名较多时,为了防止查询参数过长,导致 URL 越界,该接口建议采用 POST 方式提交查询请求。

POST 请求

POST 请求时,参数填充在 HTTP Request-body 中,请求地址:

https://dsa.api.qcloud.com/v2/index.php  

参数支持 form-data、x-www-form-urlencoded 等格式,参数数组如下:

array (
'Action' => 'GetDsaHostLogs',
'SecretId' => 'SecretId',
'Timestamp' => 1524279600,
'Nonce' => 123456789,
'Signature' => 'Signature',
'metrics' => '["request","flux"]',
'hosts' => ["test1.dsa.qcloud.com","test2.dsa.qcloud.com"],
'startDate' => 2018-04-19,
'endDate' => 2018-04-19,
'granularity' => 5
)

返回结果示例

查询成功

{
"code": 0,
"message": "",
"codeDesc": "Success",
"data": {
    "test1.dsa.qcloud.com":[
        {
            "datetime": "2018-04-19 00:00:00",
            "request": 589746515,
            "flux": 231231231
        },
        {
            "datetime": "2018-04-19 00:05:00",
            "request": 489746515,
            "flux": 524864864
        },
        {
            "datetime": "2018-04-19 00:10:00",
            "request": 375489625,
            "flux": 33545687
        },
         ......
        {
            "datetime": "2018-04-19 23:55:00",
            "request": 589746515,
            "flux": 52897464
        }
    ],
    "test2.dsa.qcloud.com":[
        {
            "datetime": "2018-04-19 00:00:00",
            "request": 589746515,
            "flux": 25631567
        },
        {
            "datetime": "2018-04-19 00:05:00",
            "request": 489746515,
            "flux": 45313876
        },
        {
            "datetime": "2018-04-19 00:10:00",
            "request": 375489625,
            "flux": 5789456314
        },
         ......
        {
            "datetime": "2018-04-19 23:55:00",
            "request": 589746515,
            "flux": 150789457
        }
    ]
}
}

查询失败

{
   "code": 4100,
   "message": "鉴权失败,请参考文档中鉴权部分。",
   "codeDesc": "AuthFailure"
}