You need to enable JavaScript to run this app.
导航

统计分析

最近更新时间2024.04.15 11:37:03

首次发布时间2023.12.28 21:21:53

阅读本文,您可以获取 Python SDK 统计分析的接口调用示例,实现快速开发。

说明

本文的调用示例包含接口的全部参数。由于参数间可能存在互斥关系,在调用时,请您参考注释,进行调整。

调用说明

  • 本文提供的接口调用示例均通过 AK 和 SK 初始化实例。
  • 接口的参数说明和错误码等信息可通过接口文档或打开 API Explorer文档说明页签查看。

前提条件

调用接口前,请先完成 Python SDK 的安装及初始化操作

调用示例

本节为您介绍统计分析相关接口的功能和调用示例。

查询区域标识符

您可以调用 DescribeLiveRegionData 接口查询区域标识符。详细的参数说明可参见 DescribeLiveRegionData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      

      resp = service.describe_live_region_data()
      print(resp)
  

查询运营商标识符

您可以调用 DescribeLiveISPData 接口查询运营商标识符。详细的参数说明可参见 DescribeLiveISPData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      

      resp = service.describe_live_isp_data()
      print(resp)
  

查询单路推流监控数据

您可以调用 DescribeLivePushStreamMetrics 接口查询单路推流监控数据。详细的参数说明可参见 DescribeLivePushStreamMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 推流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example_app"
      
      # 流名称。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:00:00+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 5:5 秒; </li>
      # <li> 30:(默认值)30 秒。 </li>
      body["Aggregation"] = 5

      resp = service.describe_live_push_stream_metrics(body)
      print(resp)
  

查询多路推流监控数据

您可以调用 DescribeLiveBatchPushStreamMetrics 接口查询多路推流监控数据。详细的参数说明可参见 DescribeLiveBatchPushStreamMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 推流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example.com"
      
      # 流名称。
      # note:
      # 使用 `Stream` 构造请求时,需同时定义 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 5:5 秒; </li>
      # <li> 30:30 秒; </li>
      # <li> 60:(默认值)1 分钟。 </li>
      body["Aggregation"] = 5

      resp = service.describe_live_batch_push_stream_metrics(body)
      print(resp)
  

查询多路推流监控数据平均值

您可以调用 DescribeLiveBatchPushStreamAvgMetrics 接口查询多路推流监控数据平均值。详细的参数说明可参见 DescribeLiveBatchPushStreamAvgMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 推流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example.com"
      
      # 流名称。
      # note:
      # 使用 `Stream` 构造请求时,需同时定义 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 5:5 秒; </li>
      # <li> 30:30 秒; </li>
      # <li> 60:(默认值)1 分钟。 </li>
      body["Aggregation"] = 5

      resp = service.describe_live_batch_push_stream_avg_metrics(body)
      print(resp)
  

查询单路回源流监控数据

您可以调用 DescribeLiveSourceStreamMetrics 接口查询单路回源流监控数据。详细的参数说明可参见 DescribeLiveSourceStreamMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 拉流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example_app"
      
      # 流名称。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 30:(默认值)30 秒。 </li>
      body["Aggregation"] = 30

      resp = service.describe_live_source_stream_metrics(body)
      print(resp)
  

查询多路回源流监控数据

您可以调用 DescribeLiveBatchSourceStreamMetrics 接口查询多路回源流监控数据。详细的参数说明可参见 DescribeLiveBatchSourceStreamMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 拉流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example_app"
      
      # 流名称。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 30:30 秒; </li>
      # <li> 60:(默认值)1 分钟。 </li>
      body["Aggregation"] = 30

      resp = service.describe_live_batch_source_stream_metrics(body)
      print(resp)
  

查询多路回源流监控数据平均值

您可以调用 DescribeLiveBatchSourceStreamAvgMetrics 接口查询多路回源流监控数据平均值。详细的参数说明可参见 DescribeLiveBatchSourceStreamAvgMetrics 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 拉流域名。
      body["Domain"] = "example.com"
      
      # 应用名称。
      body["App"] = "example_app"
      
      # 流名称。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      # note:
      # 单次查询最大时间跨度为 1 天,历史查询最大时间范围为 366 天。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 30:30 秒; </li>
      # <li> 60:(默认值)1 分钟。 </li>
      body["Aggregation"] = 30

      resp = service.describe_live_batch_source_stream_avg_metrics(body)
      print(resp)
  

查询直播流请求数和在线人数

您可以调用 DescribeLiveStreamSessionData 接口查询直播流请求数和在线人数。详细的参数说明可参见 DescribeLiveStreamSessionData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况表示该用户的所有推拉流域名。
      # note:
      # `DomainList` 和 `Domain` 传且仅传一个。
      
      describe_live_stream_session_data_body_domain_list = []

      describe_live_stream_session_data_body_domain_list_item = []
      describe_live_stream_session_data_body_domain_list_item.append("example.com")
      describe_live_stream_session_data_body_domain_list.append(describe_live_stream_session_data_body_domain_list_item)

      body["DomainList"] = describe_live_stream_session_data_body_domain_list

      
      # 查询流粒度数据时的域名参数。
      # note:
      # 使用 `Domain` 构造请求时,需要同时定义 `App` 和 `Stream` 参数,不可缺省。
      body["Domain"] = "example.com"
      
      # 查询流粒度数据时的应用名。
      # note:
      # 使用 `App` 构造请求时,需要同时定义 `Domain` 和 `Stream` 参数,不可缺省。
      body["App"] = "example_app"
      
      # 查询流粒度数据时的流名称。
      # note:
      # 使用 `Stream` 构造请求时,需要同时定义 `Domain` 和 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 请求的 Referer 信息。
      
      describe_live_stream_session_data_body_referer_list = []

      describe_live_stream_session_data_body_referer_list_item = []
      describe_live_stream_session_data_body_referer_list_item.append("www.test.com")
      describe_live_stream_session_data_body_referer_list.append(describe_live_stream_session_data_body_referer_list_item)

      body["RefererList"] = describe_live_stream_session_data_body_referer_list

      
      # 推拉流协议,缺省情况下表示所有协议类型,支持的协议如下所示。
      # <li> HTTP-FLV:基于 HTTP 协议的推拉流协议,使用 FLV 格式传输视频格式。 </li>
      # <li> HTTP-HLS:基于 HTTP 协议的推拉流协议,使用 TS 格式传输视频格式。 </li>
      # <li> RTMP:Real Time Message Protocol,实时信息传输协议。 </li>
      # <li> RTM:Real Time Media,超低延时直播协议。 </li>
      # <li> SRT:Secure Reliable Transport,安全可靠传输协议。 </li>
      # <li> QUIC:Quick UDP Internet Connections,一种基于 UDP 的全新的低延时互联网传输协议。 </li>
      # note:
      # 如果查询推拉流协议为 QUIC,不能同时查询其他协议。
      
      describe_live_stream_session_data_body_protocol_list = []

      describe_live_stream_session_data_body_protocol_list_item = []
      describe_live_stream_session_data_body_protocol_list_item.append("HTTP-FLV")
      describe_live_stream_session_data_body_protocol_list_item.append("RTMP")
      describe_live_stream_session_data_body_protocol_list.append(describe_live_stream_session_data_body_protocol_list_item)

      body["ProtocolList"] = describe_live_stream_session_data_body_protocol_list

      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_stream_session_data_body_isp_list = []

      describe_live_stream_session_data_body_isp_list_item = []
      describe_live_stream_session_data_body_isp_list_item.append("telecom")
      describe_live_stream_session_data_body_isp_list.append(describe_live_stream_session_data_body_isp_list_item)

      body["ISPList"] = describe_live_stream_session_data_body_isp_list

      
      # CDN 节点 IP 所属区域的列表,缺省情况下表示所有区域。
      
      describe_live_stream_session_data_body_region_list = []

      describe_live_stream_session_data_body_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。
      describe_live_stream_session_data_body_region_list_item["Area"] = "CN"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_stream_session_data_body_region_list_item["Country"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_stream_session_data_body_region_list_item["Province"] = "beijing"
      describe_live_stream_session_data_body_region_list.append(describe_live_stream_session_data_body_region_list_item)
      body["RegionList"] = describe_live_stream_session_data_body_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 天。时间粒度为 1 天时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 003
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> ISP:运营商; </li>
      # <li> Protocol:推拉流协议; </li>
      # <li> Referer:请求的 Referer 信息。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数需传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_stream_session_data_body_detail_field = []

      describe_live_stream_session_data_body_detail_field_item = []
      describe_live_stream_session_data_body_detail_field_item.append("Domain")
      describe_live_stream_session_data_body_detail_field.append(describe_live_stream_session_data_body_detail_field_item)

      body["DetailField"] = describe_live_stream_session_data_body_detail_field

      resp = service.describe_live_stream_session_data(body)
      print(resp)
  

查询直播流或域名的流量监控数据

您可以调用 DescribeLiveMetricTrafficData 接口查询直播流或域名的流量监控数据。详细的参数说明可参见 DescribeLiveMetricTrafficData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况表示当前用户的所有推拉流域名。
      
      describe_live_metric_traffic_data_body_domain_list = []

      describe_live_metric_traffic_data_body_domain_list_item = []
      describe_live_metric_traffic_data_body_domain_list_item.append("example.com")
      describe_live_metric_traffic_data_body_domain_list.append(describe_live_metric_traffic_data_body_domain_list_item)

      body["DomainList"] = describe_live_metric_traffic_data_body_domain_list

      
      # 应用名称。
      body["App"] = "example_app"
      
      # 流名称。
      # note:
      # 使用 `Stream` 构造请求时,需同时定义 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 推拉流协议,缺省情况下表示所有协议类型,支持的协议如下所示。
      # <li> HTTP-FLV:基于 HTTP 协议的推拉流协议,使用 FLV 格式传输视频格式。 </li>
      # <li> HTTP-HLS:基于 HTTP 协议的推拉流协议,使用 TS 格式传输视频格式。 </li>
      # <li> RTMP:Real Time Message Protocol,实时信息传输协议。 </li>
      # <li> RTM:Real Time Media,超低延时直播协议。 </li>
      # <li> SRT:Secure Reliable Transport,安全可靠传输协议。 </li>
      # <li> QUIC:Quick UDP Internet Connections,一种基于 UDP 的全新的低延时互联网传输协议。 </li>
      # note:
      # 如果查询推拉流协议为 QUIC,不能同时查询其他协议。
      
      describe_live_metric_traffic_data_body_protocol_list = []

      describe_live_metric_traffic_data_body_protocol_list_item = []
      describe_live_metric_traffic_data_body_protocol_list_item.append("HTTP-FLV")
      describe_live_metric_traffic_data_body_protocol_list_item.append("RTMP")
      describe_live_metric_traffic_data_body_protocol_list.append(describe_live_metric_traffic_data_body_protocol_list_item)

      body["ProtocolList"] = describe_live_metric_traffic_data_body_protocol_list

      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_metric_traffic_data_body_isp_list = []

      describe_live_metric_traffic_data_body_isp_list_item = []
      describe_live_metric_traffic_data_body_isp_list_item.append("telecom")
      describe_live_metric_traffic_data_body_isp_list.append(describe_live_metric_traffic_data_body_isp_list_item)

      body["ISPList"] = describe_live_metric_traffic_data_body_isp_list

      
      # CDN 节点 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_metric_traffic_data_body_region_list = []

      describe_live_metric_traffic_data_body_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。
      describe_live_metric_traffic_data_body_region_list_item["Area"] = "CN"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。 
      describe_live_metric_traffic_data_body_region_list_item["Country"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_metric_traffic_data_body_region_list_item["Province"] = "beijing"
      describe_live_metric_traffic_data_body_region_list.append(describe_live_metric_traffic_data_body_region_list_item)
      body["RegionList"] = describe_live_metric_traffic_data_body_region_list

        
      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_metric_traffic_data_body_user_region_list = []

      describe_live_metric_traffic_data_body_user_region_list_item = {} 
 
      # 大区,映射关系请参见区域映射
      describe_live_metric_traffic_data_body_user_region_list_item["Area"] = "CN"
      
      # 国家,映射关系请参见区域映射。如果按国家筛选,需要同时传入 Area 和 Country。
      describe_live_metric_traffic_data_body_user_region_list_item["Country"] = "CN"
      
      # 国内为省,国外暂不支持该参数,映射关系请参见区域映射。如果按省筛选,需要同时传入 Area、Country 和 Province。
      describe_live_metric_traffic_data_body_user_region_list_item["Province"] = "beijing"
      describe_live_metric_traffic_data_body_user_region_list.append(describe_live_metric_traffic_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_metric_traffic_data_body_user_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 300
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> Protocol:推拉流协议; </li>
      # <li> ISP:运营商。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数需传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_metric_traffic_data_body_detail_field = []

      describe_live_metric_traffic_data_body_detail_field_item = []
      describe_live_metric_traffic_data_body_detail_field_item.append("Domain")
      describe_live_metric_traffic_data_body_detail_field.append(describe_live_metric_traffic_data_body_detail_field_item)

      body["DetailField"] = describe_live_metric_traffic_data_body_detail_field

      resp = service.describe_live_metric_traffic_data(body)
      print(resp)
  

查询直播流或域名的带宽监控数据

您可以调用 DescribeLiveMetricBandwidthData 接口查询直播流或域名的带宽监控数据。详细的参数说明可参见 DescribeLiveMetricBandwidthData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况表示当前用户的所有推拉流域名。
      
      describe_live_metric_bandwidth_data_body_domain_list = []

      describe_live_metric_bandwidth_data_body_domain_list_item = []
      describe_live_metric_bandwidth_data_body_domain_list_item.append("example.com")
      describe_live_metric_bandwidth_data_body_domain_list.append(describe_live_metric_bandwidth_data_body_domain_list_item)

      body["DomainList"] = describe_live_metric_bandwidth_data_body_domain_list

      
      # 查询流粒度数据时的应用名称。
      # note:
      # 使用 `App` 构造请求时,需同时定义 `Stream` 参数,不可缺省。
      body["App"] = "example_app"
      
      # 查询流粒度数据时的流名称参数。
      # note:
      # 使用 `Stream` 构造请求时,需同时定义 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 推拉流协议,缺省情况下表示所有协议类型,支持的协议如下所示。
      # <li> HTTP-FLV:基于 HTTP 协议的推拉流协议,使用 FLV 格式传输视频格式。 </li>
      # <li> HTTP-HLS:基于 HTTP 协议的推拉流协议,使用 TS 格式传输视频格式。 </li>
      # <li> RTMP:Real Time Message Protocol,实时信息传输协议。 </li>
      # <li> RTM:Real Time Media,超低延时直播协议。 </li>
      # <li> SRT:Secure Reliable Transport,安全可靠传输协议。 </li>
      # <li> QUIC:Quick UDP Internet Connections,一种基于 UDP 的全新的低延时互联网传输协议。 </li>
      # note:
      # 如果查询推拉流协议为 QUIC,不能同时查询其他协议。
      
      describe_live_metric_bandwidth_data_body_protocol_list = []

      describe_live_metric_bandwidth_data_body_protocol_list_item = []
      describe_live_metric_bandwidth_data_body_protocol_list_item.append("HTTP-FLV")
      describe_live_metric_bandwidth_data_body_protocol_list_item.append("RTMP")
      describe_live_metric_bandwidth_data_body_protocol_list.append(describe_live_metric_bandwidth_data_body_protocol_list_item)

      body["ProtocolList"] = describe_live_metric_bandwidth_data_body_protocol_list

      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_metric_bandwidth_data_body_isp_list = []

      describe_live_metric_bandwidth_data_body_isp_list_item = []
      describe_live_metric_bandwidth_data_body_isp_list_item.append("telecom")
      describe_live_metric_bandwidth_data_body_isp_list.append(describe_live_metric_bandwidth_data_body_isp_list_item)

      body["ISPList"] = describe_live_metric_bandwidth_data_body_isp_list

      
      # CDN 节点 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_metric_bandwidth_data_body_region_list = []

      describe_live_metric_bandwidth_data_body_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。 
      describe_live_metric_bandwidth_data_body_region_list_item["Area"] = "CN"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_metric_bandwidth_data_body_region_list_item["Country"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_metric_bandwidth_data_body_region_list_item["Province"] = "beijing"
      describe_live_metric_bandwidth_data_body_region_list.append(describe_live_metric_bandwidth_data_body_region_list_item)
      body["RegionList"] = describe_live_metric_bandwidth_data_body_region_list

        
      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_metric_bandwidth_data_body_user_region_list = []

      describe_live_metric_bandwidth_data_body_user_region_list_item = {} 
 
      # 大区,映射关系请参见区域映射
      describe_live_metric_bandwidth_data_body_user_region_list_item["Area"] = "CN"
      
      # 国家,映射关系请参见区域映射。如果按国家筛选,需要同时传入 Area 和 Country。
      describe_live_metric_bandwidth_data_body_user_region_list_item["Country"] = "CN"
      
      # 国内为省,国外暂不支持该参数,映射关系请参见区域映射。如果按省筛选,需要同时传入 Area、Country 和 Province。
      describe_live_metric_bandwidth_data_body_user_region_list_item["Province"] = "beijing"
      describe_live_metric_bandwidth_data_body_user_region_list.append(describe_live_metric_bandwidth_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_metric_bandwidth_data_body_user_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 300
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> Protocol:推拉流协议; </li>
      # <li> ISP:运营商。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数需传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_metric_bandwidth_data_body_detail_field = []

      describe_live_metric_bandwidth_data_body_detail_field_item = []
      describe_live_metric_bandwidth_data_body_detail_field_item.append("Domain")
      describe_live_metric_bandwidth_data_body_detail_field.append(describe_live_metric_bandwidth_data_body_detail_field_item)

      body["DetailField"] = describe_live_metric_bandwidth_data_body_detail_field

      resp = service.describe_live_metric_bandwidth_data(body)
      print(resp)
  

查询直播流或域名的回源流量监控数据

您可以调用 DescribeLiveSourceTrafficData 接口查询直播流或域名的回源流量监控数据。详细的参数说明可参见 DescribeLiveSourceTrafficData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 拉流域名列表,缺省情况表示当前用户的所有推拉流域名。
      # note:
      # `DomainList` 和 `Domain` 传且仅传一个。
      
      describe_live_source_traffic_data_body_domain_list = []

      describe_live_source_traffic_data_body_domain_list_item = []
      describe_live_source_traffic_data_body_domain_list_item.append("example.com")
      describe_live_source_traffic_data_body_domain_list_item.append("example2.com")
      describe_live_source_traffic_data_body_domain_list.append(describe_live_source_traffic_data_body_domain_list_item)

      body["DomainList"] = describe_live_source_traffic_data_body_domain_list

      
      # 查询流粒度数据时的域名,支持拉流域名。
      # note:
      # 使用 `Domain` 构造请求时,需要同时定义 `App` 和 `Stream` 参数,不可缺省。
      body["Domain"] = "example.com"
      
      # 查询流粒度数据时的应用名称。
      # note:
      # 使用 `App` 构造请求时,需要同时定义 `Domain` 和 `Stream` 参数,不可缺省。
      body["App"] = "example_app"
      
      # 查询流粒度数据时的流名称。
      # note:
      # 使用 `Stream` 构造请求时,需要同时定义 `Domain` 和 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_source_traffic_data_body_isp_list = []

      describe_live_source_traffic_data_body_isp_list_item = []
      describe_live_source_traffic_data_body_isp_list_item.append("telecom")
      describe_live_source_traffic_data_body_isp_list.append(describe_live_source_traffic_data_body_isp_list_item)

      body["ISPList"] = describe_live_source_traffic_data_body_isp_list

      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      
      describe_live_source_traffic_data_body_user_region_list = []

      describe_live_source_traffic_data_body_user_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。 
      describe_live_source_traffic_data_body_user_region_list_item["Area"] = "CN"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_source_traffic_data_body_user_region_list_item["Country"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_source_traffic_data_body_user_region_list_item["Province"] = "beijing"
      describe_live_source_traffic_data_body_user_region_list.append(describe_live_source_traffic_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_source_traffic_data_body_user_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 300
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> ISP:运营商。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_source_traffic_data_body_detail_field = []

      describe_live_source_traffic_data_body_detail_field_item = []
      describe_live_source_traffic_data_body_detail_field_item.append("Domain")
      describe_live_source_traffic_data_body_detail_field.append(describe_live_source_traffic_data_body_detail_field_item)

      body["DetailField"] = describe_live_source_traffic_data_body_detail_field

      resp = service.describe_live_source_traffic_data(body)
      print(resp)
  

查询直播流或域名的回源带宽监控数据

您可以调用 DescribeLiveSourceBandwidthData 接口查询直播流或域名的回源带宽监控数据。详细的参数说明可参见 DescribeLiveSourceBandwidthData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 拉流域名列表,缺省情况表示当前用户的所有推拉流域名。
      # note:
      # `DomainList` 和 `Domain` 传且仅传一个。
      
      describe_live_source_bandwidth_data_body_domain_list = []

      describe_live_source_bandwidth_data_body_domain_list_item = []
      describe_live_source_bandwidth_data_body_domain_list_item.append("example.com")
      describe_live_source_bandwidth_data_body_domain_list_item.append("example2.com")
      describe_live_source_bandwidth_data_body_domain_list.append(describe_live_source_bandwidth_data_body_domain_list_item)

      body["DomainList"] = describe_live_source_bandwidth_data_body_domain_list

      
      # 查询流粒度数据时的域名,支持填写拉流域名。
      # note:
      # 使用 `Domain` 构造请求时,需要同时定义 `App` 和 `Stream` 参数,不可缺省。
      body["Domain"] = "example.com"
      
      # 查询流粒度数据时的应用名称。
      # note:
      # 使用 `App` 构造请求时,需要同时定义 `Domain` 和 `Stream` 参数,不可缺省。
      body["App"] = "example_app"
      
      # 查询流粒度数据时的流名称。
      # note:
      # 使用 `Stream` 构造请求时,需要同时定义 `Domain` 和 `App` 参数,不可缺省。
      body["Stream"] = "example_stream"
      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_source_bandwidth_data_body_isp_list = []

      describe_live_source_bandwidth_data_body_isp_list_item = []
      describe_live_source_bandwidth_data_body_isp_list_item.append("telecom")
      describe_live_source_bandwidth_data_body_isp_list.append(describe_live_source_bandwidth_data_body_isp_list_item)

      body["ISPList"] = describe_live_source_bandwidth_data_body_isp_list

      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      
      describe_live_source_bandwidth_data_body_user_region_list = []

      describe_live_source_bandwidth_data_body_user_region_list_item = {} 
 
      # 区域信息的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。
      describe_live_source_bandwidth_data_body_user_region_list_item["Area"] = "CN"
      
      # 区域信息的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_source_bandwidth_data_body_user_region_list_item["Country"] = "CN"
      
      # 区域信息的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_source_bandwidth_data_body_user_region_list_item["Province"] = "beijing"
      describe_live_source_bandwidth_data_body_user_region_list.append(describe_live_source_bandwidth_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_source_bandwidth_data_body_user_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 300
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> ISP:运营商。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_source_bandwidth_data_body_detail_field = []

      describe_live_source_bandwidth_data_body_detail_field_item = []
      describe_live_source_bandwidth_data_body_detail_field_item.append("20")
      describe_live_source_bandwidth_data_body_detail_field.append(describe_live_source_bandwidth_data_body_detail_field_item)

      body["DetailField"] = describe_live_source_bandwidth_data_body_detail_field

      resp = service.describe_live_source_bandwidth_data(body)
      print(resp)
  

查询域名状态码占比

您可以调用 DescribeLivePlayStatusCodeData 接口查询域名状态码占比。详细的参数说明可参见 DescribeLivePlayStatusCodeData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况下表示当前用户的所有推拉流域名。
      
      describe_live_play_status_code_data_body_domain_list = []

      describe_live_play_status_code_data_body_domain_list_item = []
      describe_live_play_status_code_data_body_domain_list_item.append("example.com")
      describe_live_play_status_code_data_body_domain_list_item.append("example2.com")
      describe_live_play_status_code_data_body_domain_list.append(describe_live_play_status_code_data_body_domain_list_item)

      body["DomainList"] = describe_live_play_status_code_data_body_domain_list

      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_play_status_code_data_body_isp_list = []

      describe_live_play_status_code_data_body_isp_list_item = []
      describe_live_play_status_code_data_body_isp_list_item.append("telecom")
      describe_live_play_status_code_data_body_isp_list.append(describe_live_play_status_code_data_body_isp_list_item)

      body["ISPList"] = describe_live_play_status_code_data_body_isp_list

      
      # CDN 节点 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_play_status_code_data_body_region_list = []

      describe_live_play_status_code_data_body_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。
      describe_live_play_status_code_data_body_region_list_item["Area"] = "CN"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_play_status_code_data_body_region_list_item["Country"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_play_status_code_data_body_region_list_item["Province"] = "beijing"
      describe_live_play_status_code_data_body_region_list.append(describe_live_play_status_code_data_body_region_list_item)
      body["RegionList"] = describe_live_play_status_code_data_body_region_list

        
      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      # note:
      # 参数 `RegionList`和`UserRegionList` 不支持同时传入。
      
      describe_live_play_status_code_data_body_user_region_list = []

      describe_live_play_status_code_data_body_user_region_list_item = {} 
 
      # 大区,映射关系请参见区域映射
      describe_live_play_status_code_data_body_user_region_list_item["Area"] = "CN"
      
      # 国家,映射关系请参见区域映射。如果按国家筛选,需要同时传入 Area 和 Country。
      describe_live_play_status_code_data_body_user_region_list_item["Country"] = "CN"
      
      # 国内为省,国外暂不支持该参数,映射关系请参见区域映射。如果按省筛选,需要同时传入 Area、Country 和 Province。
      describe_live_play_status_code_data_body_user_region_list_item["Province"] = "beijing"
      describe_live_play_status_code_data_body_user_region_list.append(describe_live_play_status_code_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_play_status_code_data_body_user_region_list

        
      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:(默认值)1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 300
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名; </li>
      # <li> ISP:运营商。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数需传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_play_status_code_data_body_detail_field = []

      describe_live_play_status_code_data_body_detail_field_item = []
      describe_live_play_status_code_data_body_detail_field_item.append("Domain")
      describe_live_play_status_code_data_body_detail_field.append(describe_live_play_status_code_data_body_detail_field_item)

      body["DetailField"] = describe_live_play_status_code_data_body_detail_field

      resp = service.describe_live_play_status_code_data(body)
      print(resp)
  

查询 IP 地址归属的 CDN 节点

您可以调用 DescribeIpInfo 接口查询 IP 地址归属的 CDN 节点。详细的参数说明可参见 DescribeIpInfo 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 待查询的 IP 地址列表。支持 IPv4 和 IPv6 地址,一次最多查询 50 个 IP 地址。
      
      describe_ip_info_body_ips = []

      describe_ip_info_body_ips_item = []
      describe_ip_info_body_ips_item.append("186.199.***.1")
      describe_ip_info_body_ips.append(describe_ip_info_body_ips_item)

      body["Ips"] = describe_ip_info_body_ips

      resp = service.describe_ip_info(body)
      print(resp)
  

查询峰值流数

您可以调用 DescribeLiveStreamCountData 接口查询峰值流数。详细的参数说明可参见 DescribeLiveStreamCountData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况表示当前用户的所有推拉流域名。
      
      describe_live_stream_count_data_body_domain_list = []

      describe_live_stream_count_data_body_domain_list_item = []
      describe_live_stream_count_data_body_domain_list_item.append("exmaple.com")
      describe_live_stream_count_data_body_domain_list_item.append("example2.com")
      describe_live_stream_count_data_body_domain_list.append(describe_live_stream_count_data_body_domain_list_item)

      body["DomainList"] = describe_live_stream_count_data_body_domain_list

      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天; </li>
      # <li> 86400:1 天。时间粒度为 1 天时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 60
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_stream_count_data_body_detail_field = []

      describe_live_stream_count_data_body_detail_field_item = []
      describe_live_stream_count_data_body_detail_field_item.append("Domain")
      describe_live_stream_count_data_body_detail_field.append(describe_live_stream_count_data_body_detail_field_item)

      body["DetailField"] = describe_live_stream_count_data_body_detail_field

      
      # 流类型,缺省情况下表示全部类型,支持的流类型取值如下。
      # <li> push:推流; </li>
      # <li> relay-source:回源流; </li>
      # <li> transcode:转码流。 </li>
      
      describe_live_stream_count_data_body_stream_type = []

      describe_live_stream_count_data_body_stream_type_item = []
      describe_live_stream_count_data_body_stream_type_item.append("push")
      describe_live_stream_count_data_body_stream_type.append(describe_live_stream_count_data_body_stream_type_item)

      body["StreamType"] = describe_live_stream_count_data_body_stream_type

      resp = service.describe_live_stream_count_data(body)
      print(resp)
  

查询推流峰值流数

您可以调用 DescribeLivePushStreamCountData 接口查询推流峰值流数。详细的参数说明可参见 DescribeLivePushStreamCountData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 域名列表,缺省情况表示当前用户的所有推流域名和拉流域名。
      
      describe_live_push_stream_count_data_body_domain_list = []

      describe_live_push_stream_count_data_body_domain_list_item = []
      describe_live_push_stream_count_data_body_domain_list_item.append("example1.com")
      describe_live_push_stream_count_data_body_domain_list_item.append("example2.com")
      describe_live_push_stream_count_data_body_domain_list.append(describe_live_push_stream_count_data_body_domain_list_item)

      body["DomainList"] = describe_live_push_stream_count_data_body_domain_list

      
      # 查询的开始时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["StartTime"] = "2021-08-16T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的 UTC 时间,精度为秒。
      body["EndTime"] = "2021-08-16T00:01:59+08:00"
      
      # 数据聚合的时间粒度,单位为秒,支持的时间粒度如下所示。
      # <li> 60:1 分钟。时间粒度为 1 分钟时,单次查询最大时间跨度为 24 小时,历史查询时间范围为 366 天; </li>
      # <li> 300:(默认值)5 分钟。时间粒度为 5 分钟时,单次查询最大时间跨度为 31 天,历史查询时间范围为 366 天; </li>
      # <li> 3600:1 小时。时间粒度为 1 小时时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天; </li>
      # <li> 86400:1 天。时间粒度为 1 天时,单次查询最大时间跨度为 93 天,历史查询时间范围为 366 天。 </li>
      body["Aggregation"] = 60
      
      # 数据拆分的维度,缺省情况下不进行数据拆分,支持的维度如下所示。
      # <li> Domain:域名。 </li>
      # note:
      # 配置数据拆分维度时,对应的维度参数传入多个值时会返回按维度进行拆分的数据;对应的维度只传入一个值时不返回按维度进行拆分的数据。
      
      describe_live_push_stream_count_data_body_detail_field = []

      describe_live_push_stream_count_data_body_detail_field_item = []
      describe_live_push_stream_count_data_body_detail_field_item.append("Domain")
      describe_live_push_stream_count_data_body_detail_field.append(describe_live_push_stream_count_data_body_detail_field_item)

      body["DetailField"] = describe_live_push_stream_count_data_body_detail_field

      
      # 提供网络接入服务的运营商标识符,缺省情况下表示所有运营商,支持的运营商如下所示。
      # <li> unicom:联通; </li>
      # <li> railcom:铁通; </li>
      # <li> telecom:电信; </li>
      # <li> mobile:移动; </li>
      # <li> cernet:教育网; </li>
      # <li> tianwei:天威; </li>
      # <li> alibaba:阿里巴巴; </li>
      # <li> tencent:腾讯; </li>
      # <li> drpeng:鹏博士; </li>
      # <li> btvn:广电; </li>
      # <li> huashu:华数; </li>
      # <li> other:其他。 </li>
      # 您也可以通过 [DescribeLiveISPData](https://www.volcengine.com/docs/6469/1133974) 接口获取运营商对应的标识符。
      
      describe_live_push_stream_count_data_body_isp_list = []

      describe_live_push_stream_count_data_body_isp_list_item = []
      describe_live_push_stream_count_data_body_isp_list_item.append("telecom")
      describe_live_push_stream_count_data_body_isp_list.append(describe_live_push_stream_count_data_body_isp_list_item)

      body["ISPList"] = describe_live_push_stream_count_data_body_isp_list

      
      # 客户端 IP 所属区域的列表,缺省情况下表示所有区域。
      
      describe_live_push_stream_count_data_body_user_region_list = []

      describe_live_push_stream_count_data_body_user_region_list_item = {} 
 
      # 区域信息中的大区标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。
      describe_live_push_stream_count_data_body_user_region_list_item["Area"] = "CN"
      
      # 区域信息中的省份标识符,国外暂不支持该参数,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按省筛选,需要同时传入 `Area`、`Country` 和 `Province`。
      describe_live_push_stream_count_data_body_user_region_list_item["Province"] = "beijing"
      
      # 区域信息中的国家标识符,如何获取请参见[查询区域标识符](https://www.volcengine.com/docs/6469/1133973)。如果按国家筛选,需要同时传入 `Area` 和 `Country`。
      describe_live_push_stream_count_data_body_user_region_list_item["Country"] = "CN"
      describe_live_push_stream_count_data_body_user_region_list.append(describe_live_push_stream_count_data_body_user_region_list_item)
      body["UserRegionList"] = describe_live_push_stream_count_data_body_user_region_list

      resp = service.describe_live_push_stream_count_data(body)
      print(resp)
  

查询推流流信息

您可以调用 DescribeLivePushStreamInfoData 接口查询推流流信息。详细的参数说明可参见 DescribeLivePushStreamInfoData 接口文档。

接口调用示例如下所示。

# coding:utf-8
import os

from volcengine.live.v20230101.live_service import LiveService

if __name__ == '__main__':
      # 强烈建议不要把 AccessKey ID 和 AccessKey Secret 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
      # 本示例通过从环境变量中读取 AccessKey ID 和 AccessKey Secret,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ACCESS_KEY_ID 和 ACCESS KEY_SECRET
      service = LiveService("your_host",os.environ['ACCESS_KEY_ID'], os.environ['ACCESS_KEY_SECRET'])
  
      body = {}
        
      # 直播推流使用的域名列表,缺省为空,表示当前账号下所有域名。您可以调用 [ListDomainDetail](https://www.volcengine.com/docs/6469/1126815) 接口或在视频直播控制台的[域名管理](https://console-stable.volcanicengine.com/live/main/domain/list)页面,查看直播推流使用的域名。
      
      describe_live_push_stream_info_data_body_domain_list = []

      describe_live_push_stream_info_data_body_domain_list_item = []
      describe_live_push_stream_info_data_body_domain_list_item.append("push.example.com")
      describe_live_push_stream_info_data_body_domain_list.append(describe_live_push_stream_info_data_body_domain_list_item)

      body["DomainList"] = describe_live_push_stream_info_data_body_domain_list

      
      # 应用名称,取值与直播流地址中 AppName 字段取值相同,默认为空,表示查询所有应用名称。支持由大小写字母(A - Z、a - z)、下划线(_)、短横线(-)和句点(.)组成,长度为 1 到 30 个字符。
      body["App"] = "example_app"
      
      # 流名称,取值与直播流地址中 StreamName 字段取值相同,默认为空表示查询所有流名称。支持由大小写字母(A - Z、a - z)、下划线(_)、短横线(-)和句点(.)组成,长度为 1 到 100 个字符。
      body["Stream"] = "example_stream"
      
      # 查询的开始时间,RFC3339 格式的时间字符串,精度为秒。
      # note:
      # 支持查询最近 93 天以内的推流数据。
      body["StartTime"] = "2021-04-13T00:00:00+08:00"
      
      # 查询的结束时间,RFC3339 格式的时间字符串,精度为秒。
      # note:
      # 支持查询最近 93 天以内的推流数据。
      body["EndTime"] = "2021-04-14T00:00:00+08:00"
      
      # 查询数据的页码,默认为 `1`,表示查询第一页的数据,取值范围为正整数。
      body["PageNum"] = 1
      
      # 每页显示的数据条数,默认为 `20`,取值范围为 [1,1000]。
      body["PageSize"] = 20

      resp = service.describe_live_push_stream_info_data(body)
      print(resp)