
# 查询域名统计数据 - ShowDomainStats
#### 功能介绍
查询域名流量、带宽、请求数、HTTP状态码等指标的汇总数据及明细数据。
- 支持查询90天内的数据。
  
- 支持多指标同时查询，不超过5个。
  
- 最多同时指定20个域名。
  
- 起始时间和结束时间需要同时指定，左闭右开，毫秒级时间戳，且时间点必须为与查询时间间隔参数匹配的整时刻点。比如查询时间间隔为5分钟时，起始时间和结束时间必须为5分钟整时刻点，如：0分、5分、10分、15分等，如果时间点与时间间隔不匹配，返回数据可能与预期不一致。统一用开始时间表示一个时间段，如：2019-01-24 20:15:00 表示取 \[20:15:00, 20:20:00)的统计数据，且左闭右开。
  
- 流量类指标单位统一为Byte（字节）、带宽类指标单位统一为bit/s（比特/秒）、请求数类和状态码类指标单位统一为次数。用于查询指定域名、指定统计指标的明细数据。
  
- 单租户调用频率：15次/s。
  
- QPS(每秒请求数)：当action传detail、stat_type传req_num时，可自行根据接口返回值计算QPS(每秒请求数)，计算方法：单个查询粒度内的请求数/查询时间粒度(interval)。
  
 
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-cdn/cdn_02_0019.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-cdn/cdn_02_0020.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                       | 访问级别 | 资源类型（\*为必须） | 条件键                   | 别名                         | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | cdn:statistics:queryStats | List | domain \*   | -                     | cdn:statistics:queryTopUrl | -      |
  | cdn:statistics:queryStats | List | -           | g:EnterpriseProjectId | cdn:statistics:queryTopUrl | -      |
     
  
 
#### URI
GET /v1.0/cdn/statistics/domain-stats
表1Query参数 
| 参数                    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| action                | 是    | String | **参数解释：** 查询数据类型 **约束限制：** 不涉及 **取值范围：** - summary：查询汇总数据   - detail：查询明细数据    **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| start_time            | 是    | Long   | **参数解释：** 查询起始时间戳 **约束限制：** 需与结束时间戳同时指定，左闭右开 **取值范围：** - 若查询5分钟时间粒度（即interval为300）数据，start_time设置为整5分钟时刻点，如：1631240100000(对应2021-09-10 10:15:00)   - 若查询1小时时间粒度（即interval为3600）数据，start_time设置为整小时时刻点，如：1631239200000(对应2021-09-10 10:00:00)   - 若查询1天时间粒度（即interval为86400）数据，start_time设置为东8区零点时刻点，如：1631203200000(对应2021-09-10 00:00:00)    **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| end_time              | 是    | Long   | **参数解释：** 查询结束时间戳 **约束限制：** 需与起始时间戳同时指定，左闭右开 **取值范围：** - 若查询5分钟时间粒度（即interval为300）数据，end_time设置为整5分钟时刻点，如：1631240100000）对应2021-09-10 10:15:00）   - 若查询1小时时间粒度（即interval为3600）数据，end_time设置为整小时时刻点，如：1631239200000（对应2021-09-10 10:00:00）   - 若查询1天时间粒度（即interval为86400）数据，end_time设置为东8区零点时刻点，如：1631203200000（对应2021-09-10 00:00:00）    **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| domain_name           | 是    | String | **参数解释：** 域名列表 说明： 如果域名在查询时间段内无数据，结果将不返回该域名的信息 **约束限制：** 仅支持查询已经在CDN创建成功的域名 **取值范围：** - all表示查询名下全部域名   - 多个域名以逗号（半角）分隔，如：www.test1.com,www.test2.com    **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| stat_type             | 是    | String | **参数解释：** 统计指标类型 **约束限制：** HTTP状态码中的status_code指标和bs_status_code指标不能一起查询 **取值范围：** - 网络资源消耗 - bw：带宽   - flux：流量   - bs_bw：回源带宽   - bs_flux：回源流量     - 访问情况 - req_num：请求总数   - hit_num：请求命中次数   - bs_num：回源总数   - bs_fail_num：回源失败数   - hit_flux：命中流量     - HTTP状态码：组合指标 - http_code_2xx：状态码汇总2xx   - http_code_3xx：状态码汇总3xx   - http_code_4xx：状态码汇总4xx   - http_code_5xx：状态码汇总5xx   - bs_http_code_2xx：回源状态码汇总2xx   - bs_http_code_3xx：回源状态码汇总3xx   - bs_http_code_4xx：回源状态码汇总4xx   - bs_http_code_5xx：回源状态码汇总5xx   - status_code_2xx：状态码详情2xx   - status_code_3xx：状态码详情3xx   - status_code_4xx：状态码详情4xx   - status_code_5xx：状态码详情5xx   - bs_status_code_2xx：回源状态码详情2xx   - bs_status_code_3xx：回源状态码详情3xx   - bs_status_code_4xx：回源状态码详情4xx   - bs_status_code_5xx：回源状态码详情5xx    **默认取值：**    不涉及 |
| interval              | 否    | Long   | **参数解释：** 查询时间粒度 **约束限制：** - 查询跨度不超过1天时，支持5分钟粒度、1小时粒度   - 查询跨度不超过7天时，支持5分钟、1小时粒度、1天粒度   - 查询跨度不超过31天时，支持1小时粒度、1天粒度    **取值范围：** - 300：采样时间间隔为5分钟，单位：秒   - 3600：采样时间间隔为1小时，单位：秒   - 86400：采样时间间隔为1天，单位：秒    **默认取值：** 默认取对应查询时间跨度的最小时间间隔 说明： 时间跨度小于等于7天，最小时间间隔为300；时间跨度大于7天，最小时间间隔为3600                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| group_by              | 否    | String | **参数解释：** 数据分组方式 **约束限制：** 不涉及 **取值范围：** domain：按域名分组 **默认取值：** 默认不分组                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| service_area          | 否    | String | **参数解释：** 服务范围 **约束限制：** 当查询回源类指标和状态码详情类指标时该参数无效 **取值范围：** - mainland_china：中国大陆   - outside_mainland_china：中国大陆境外   - global：全球    **默认取值：** mainland_china：中国大陆                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| enterprise_project_id | 否    | String | **参数解释：** 企业项目id 说明： 您可以通过调用企业项目管理服务（EPS）的查询企业项目列表接口（ListEnterpriseProject）查询企业项目id **约束限制：** - 当用户开启企业项目功能时，该参数生效，表示查询资源所属项目   - 当使用子账号调用接口时，该参数必传    **取值范围：** all表示所有项目 **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   
#### 请求参数
无
#### 响应参数
**状态码：200**
表2响应Body参数 
| 参数         | 参数类型                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|
| group_by   | String               | **参数解释：** 数据分组方式 **取值范围：** domain：按域名分组                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| start_time | Long                 | **参数解释：** 查询起始时间戳 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| end_time   | Long                 | **参数解释：** 查询结束时间戳 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| stat_type  | String               | **参数解释：** 统计指标类型 **取值范围：** - flux：流量   - req_num：请求总数                                                                                                                                                                            |
| action     | String               | **参数解释：** 查询数据类型 **取值范围：** - summary：汇总数据   - detail：明细数据                                                                                                                                                                        |
| interval   | Long                 | **参数解释：** 查询时间粒度 **取值范围：** - 300：采样时间间隔为5分钟，单位：秒   - 3600：采样时间间隔为1小时，单位：秒   - 86400：采样时间间隔为1天，单位：秒    |
| result     | Map\<String,Object\> | **参数解释：** 按指定的分组方式组织的数据 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   
**状态码：default**
表3响应Body参数 
| 参数    | 参数类型                                               | 描述              |
|:---|:---|:---|
| error | [ErrMsg] object | 用于返回具体的错误码和错误消息 |
   
 表4ErrMsg 
| 参数         | 参数类型   | 描述   |
|:---|:---|:---|
| error_code | String | 错误码  |
| error_msg  | String | 错误描述 |
   
#### 请求示例
- 不分组详情数据
  ```
  GET https://cdn.myhuaweicloud.com/v1.0/cdn/statistics/domain-stats?action=detail&start_time=1667030400000&end_time=1667034000000&domain_name=www.test1.com&stat_type=flux&interval=300&service_area=mainland_china&enterprise_project_id=all
  ```
  
- 按域名分组详情数据
  ```
  GET https://cdn.myhuaweicloud.com/v1.0/cdn/statistics/domain-stats?action=detail&start_time=1667030400000&end_time=1667034000000&domain_name=www.test1.com&stat_type=flux&interval=300&group_by=domain&service_area=mainland_china&enterprise_project_id=all
  ```
  
 
#### 响应示例
**状态码：200**
正常响应
- 不分组详情数据
  ```
  {
    "start_time" : 1667030400000,
    "end_time" : 1667034000000,
    "stat_type" : "flux",
    "action" : "detail",
    "interval" : 300,
    "result" : {
      "flux" : [ 1000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
    }
  }
  ```
  
- 按域名分组详情数据
  ```
  {
    "start_time" : 1667030400000,
    "end_time" : 1667034000000,
    "stat_type" : "flux",
    "action" : "detail",
    "interval" : 300,
    "group_by" : "domain",
    "result" : {
      "www.test1.com" : {
        "flux" : [ 118, 105, 113, 115, 114, 111, 106, 108, 118, 94, 97, 113 ]
      }
    }
  }
  ```
  
 
#### SDK代码示例
SDK代码示例如下。
- [Java]
  ```
  package com.huaweicloud.sdk.test;
  import com.huaweicloud.sdk.core.auth.ICredential;
  import com.huaweicloud.sdk.core.auth.GlobalCredentials;
  import com.huaweicloud.sdk.core.exception.ConnectionException;
  import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
  import com.huaweicloud.sdk.core.exception.ServiceResponseException;
  import com.huaweicloud.sdk.cdn.v2.region.CdnRegion;
  import com.huaweicloud.sdk.cdn.v2.*;
  import com.huaweicloud.sdk.cdn.v2.model.*;
  public class ShowDomainStatsSolution {
      public static void main(String[] args) {
          // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
          // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
          String ak = System.getenv("CLOUD_SDK_AK");
          String sk = System.getenv("CLOUD_SDK_SK");
          ICredential auth = new GlobalCredentials()
                  .withAk(ak)
                  .withSk(sk);
          CdnClient client = CdnClient.newBuilder()
                  .withCredential(auth)
                  .withRegion(CdnRegion.valueOf("<YOUR REGION>"))
                  .build();
          ShowDomainStatsRequest request = new ShowDomainStatsRequest();
          try {
              ShowDomainStatsResponse response = client.showDomainStats(request);
              System.out.println(response.toString());
          } catch (ConnectionException e) {
              e.printStackTrace();
          } catch (RequestTimeoutException e) {
              e.printStackTrace();
          } catch (ServiceResponseException e) {
              e.printStackTrace();
              System.out.println(e.getHttpStatusCode());
              System.out.println(e.getRequestId());
              System.out.println(e.getErrorCode());
              System.out.println(e.getErrorMsg());
          }
      }
  }
  ```
- [Python]
  ```
  # coding: utf-8
  import os
  from huaweicloudsdkcore.auth.credentials import GlobalCredentials
  from huaweicloudsdkcdn.v2.region.cdn_region import CdnRegion
  from huaweicloudsdkcore.exceptions import exceptions
  from huaweicloudsdkcdn.v2 import *
  if __name__ == "__main__":
      # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak = os.environ["CLOUD_SDK_AK"]
      sk = os.environ["CLOUD_SDK_SK"]
      credentials = GlobalCredentials(ak, sk)
      client = CdnClient.new_builder() \
          .with_credentials(credentials) \
          .with_region(CdnRegion.value_of("<YOUR REGION>")) \
          .build()
      try:
          request = ShowDomainStatsRequest()
          response = client.show_domain_stats(request)
          print(response)
      except exceptions.ClientRequestException as e:
          print(e.status_code)
          print(e.request_id)
          print(e.error_code)
          print(e.error_msg)
  ```
- [Go]
  ```
  package main
  import (
  "fmt"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global"
      cdn "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2"
  "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2/model"
      region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdn/v2/region"
  )
  func main() {
      // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
      // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
      ak := os.Getenv("CLOUD_SDK_AK")
      sk := os.Getenv("CLOUD_SDK_SK")
      auth, err := global.NewCredentialsBuilder().
          WithAk(ak).
          WithSk(sk).
          SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      hcClient, err := cdn.CdnClientBuilder().
           WithRegion(region.ValueOf("<YOUR REGION>")).
           WithCredential(auth).
           SafeBuild()
      if err != nil {
          fmt.Println(err)
          return
      }
      client := cdn.NewCdnClient(hcClient)
      request := &model.ShowDomainStatsRequest{}
  response, err := client.ShowDomainStats(request)
  if err == nil {
          fmt.Printf("%+v\n", response)
      } else {
          fmt.Println(err)
      }
  }
  ```
- [更多]
  更多编程语言的SDK代码示例，请参见[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CDN/sdk?api=ShowDomainStats&version=v2)的代码示例页签，可生成自动对应的SDK代码示例。
#### 状态码
| 状态码     | 描述   |
|:---|:---|
| 200     | 正常响应 |
| default | 异常响应 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-cdn/ErrorCode.html)。
