You need to enable JavaScript to run this app.
导航
获取访问状态码的统计排名
最近更新时间:2024.09.13 15:27:24首次发布时间:2024.04.16 14:36:31

API 说明

基于火山引擎内容分发网络(CDN)收到的用户请求,该 API 按加速域名对一系列的指标数据进行汇总,并对这些汇总数据按从大到小排序。

要调用该 API,您需要指定一个状态码指标,一个统计时间段和一个时间粒度。您还可以指定多个过滤条件对用户请求进行过滤。您最多能查询过去 92 天的数据。

数据稳定性:受网络波动影响,边缘节点上统计的指标数据可能会发生变化。大多数情况下,指标数据会在 12 小时内逐步稳定下来。

数据时效性:指标数据可能会有 5 分钟左右的延时。

说明

如果您是刚开始使用数据统计的 API,请务必先阅读以下文档,这将有助于您理解该 API 文档。

使用限制

节流限制:您每秒最多可以提交 20 个 API 请求。

请求说明

  • 请求方式:POST
  • 请求地址:https://cdn.volcengineapi.com/?Action=DescribeEdgeStatusCodeRanking&Version=2021-03-01

请求参数

Query

参数名称
数据类型
是否必选
参数说明
Action
String
接口名称。当前 API 的名称为 DescribeEdgeStatusCodeRanking
Version
String
接口版本。当前 API 的版本为 2021-03-01

Body

参数名称
数据类型
是否必选
参数说明
示例
Item
String
表示一个分组条件。当前,该参数值只能是 domain,表示按 DomainMetric 数据进行汇总。
domain
Metric
String

对于 CDN 对用户请求的响应,该参数表示以下某个类别的状态码数量:

  • status_2xx:表示 2xx 状态码数量。
  • status_3xx:表示 3xx 状态码数量。
  • status_4xx:表示 4xx 状态码数量。
  • status_5xx:表示 5xx 状态码数量。
status_4xx
StartTime
Long
表示统计时间段的开始时间,格式是 Unix 时间戳,精度是秒。StartTime 必须早于或者等于 EndTime。同时,StartTime 和 EndTime 所表示的统计时间段不能超过 31 天。
1710259200
EndTime
Long
表示统计时间段的结束时间,格式是 Unix 时间戳,精度是秒。
1710836303
Interval
String

表示一个时间粒度。该 API 基于 IntervalStartTimeEndTime 所表示的统计时间段拆分成一系列的时间区间,然后对每个时间区间统计 Metric 的数据。

关于 Interval 参数是如何用来拆分统计时间段,参考 统计时间段说明

该参数有以下取值:

  • 1min:表示时间粒度是 1 分钟。
  • 5min:表示时间粒度是 5 分钟。

您可以指定的时间粒度受 StartTime 和 EndTime 所表示的时间范围的影响。

  • 如果时间范围 <= 1 天,您可以指定的时间粒度有 1min5min
  • 如果 1 天 < 时间范围 <= 31 天,您可以指定的时间粒度有 5min
该参数的默认值是 5min。如果默认值不匹配时间范围,API 请求会失败。
1min
Project
String

表示一个项目。

  • 如果您指定了 Domain,该 API 对所有您指定的加速域名统计 Metric 数据。
  • 如果您指定了 Project ,但未指定 Domain,该 API 对您指定的项目统计 Metric 数据。参见 项目数据是如何统计的
  • 如果您既未指定 Project ,也未指定 Domain,该 API 对所有加速域名统计 Metric 数据。
my_project
Domain
String

表示一个或多个加速域名,用于对用户请求进行过滤。该 API 对您指定的每个加速域名统计 Metric 数据。您最多可以指定 50 个加速域名。多个加速域名之间使用逗号(,)分隔。如果不指定 Domain,表示不使用该参数对请求进行过滤。

如果您指定了 Project,您指定的加速域名必须是属于该 Project 的。

说明

当子用户调用该 API 时,请留意以下说明:

  • 子用户只能指定其有权限访问的加速域名。子用户可以调用 ListCdnDomains 获取其有权限访问的加速域名。
  • 如果不指定该参数,表示所有该子用户有权限访问的那些加速域名。
www.example.com,www.test.com,img.example.com

项目数据是如何统计的

在对一个项目统计指标数据时,CDN 统计的是项目内加速域名的数据。

  • 如果统计时间段内有一个加速域名转出该项目,该项目的指标数据不会包含转出后该加速域名的数据。
  • 如果统计时间段内有一个加速域名转入该项目,该项目的指标数据会包含转入后该加速域名的数据。

示例

考虑以下场景:

  • 您指定的统计时间段是某天的 8:00-10:00。
  • 加速域名X 在 9:00 从另一个项目转移到项目A。加速域名Y 一直在项目A 中。

在这个场景中,如果您对项目A 统计指标数据,则指标数据涵盖:

  • 加速域名X 在 9:00 至 10:00 之间的指标数据。
  • 加速域名Y 在 8:00 至 10:00 之间的指标数据。

返回参数

参数名称
数据类型
参数说明
示例
Item
String
表示请求参数 Item 所指定的分组条件。
domain
Metric
String
表示请求参数 Metric 所指定的指标。
status_4xx
TopDataDetails
Object[]
表示一组数据对象,包含由 Item 汇总的 Metric 数据的详情。每个数据对象包含每个类别下状态码的数量和占比。这些数据对象按指定的 Metric 从大到小排序。

请求示例

POST https://cdn.volcengineapi.com/?Action=DescribeEdgeStatusCodeRanking&Version=2021-03-01
{
    "StartTime": 1710259200,
    "EndTime": 1710835599,
    "Metric": "status_2xx",
    "Item": "domain",
    "Project": "my_project",
    "Domain": "www.example.com,www.test.com,img.example.com"
}

返回示例

{
    "ResponseMetadata": {
        "RequestId": "20240319234228A07998A9B5FFC309EB82",
        "Action": "DescribeEdgeStatusCodeRanking",
        "Version": "2021-03-01",
        "Service": "CDN",
        "Region": "cn-north-1"
    },
    "Result": {
        "Item": "domain",
        "Metric": "status_2xx",
        "TopDataDetails": [
            {
                "ItemKey": "img.example.com.com",
                "Status2xx": 22428898,
                "Status2xxRatio": 0.61,
                "Status3xx": 0,
                "Status3xxRatio": 0,
                "Status4xx": 333,
                "Status4xxRatio": 0.0001,
                "Status5xx": 34,
                "Status5xxRatio": 0
            },
            {
                "ItemKey": "www.test.com",
                "Status2xx": 9470608,
                "Status2xxRatio": 0.37,
                "Status3xx": 0,
                "Status3xxRatio": 0,
                "Status4xx": 2380317,
                "Status4xxRatio": 0.6019,
                "Status5xx": 324607,
                "Status5xxRatio": 0.0109
            },
            {
                "ItemKey": "www.example.com",
                "Status2xx": 3069749,
                "Status2xxRatio": 0.02,
                "Status3xx": 0,
                "Status3xxRatio": 0,
                "Status4xx": 7,
                "Status4xxRatio": 0,
                "Status5xx": 0,
                "Status5xxRatio": 0
            }
        ]
    }
}

错误码

如果响应正文的 ResponseMetadata 字段中包含 Error 字段,则表示 API 请求失败。更多关于错误码的信息,参见错误码