You need to enable JavaScript to run this app.
导航
新增日志主题(新版)
最近更新时间:2025.04.18 15:18:20首次发布时间:2025.04.18 15:18:20
我的收藏
有用
有用
无用
无用

概述

本文档介绍如何在火山引擎内容分发网络(CDN)中创建日志投递任务。您最多可以创建 20 个任务。

任务创建向导包含两个步骤:

  1. 设置投递信息:配置投递相关的设置。

  2. 关联域名:指定投递哪些加速域名的实时日志。

步骤一:设置投递信息

在该步骤中,您可以指定将实时日志投递到火山引擎日志服务(TLS)、阿里云日志服务(SLS)或者您指定的 HTTP 服务器。

火山引擎日志服务(TLS)

前提条件

如果您第一次将实时日志投递到 TLS,在您点击 投递对象 下的 火山引擎日志服务(TLS) 时,页面会提示您开通 TLS 服务,然后授权 CDN 访问 TLS。请根据控制台页面的提示进行操作。

说明

  • 当您授权 CDN 访问 TLS 时,您的火山引擎主账号下会被添加 ServiceRoleForCDN 角色。

  • 要使子用户有权限创建日志投递任务,子用户需要被授予 CDNLogsFullAccess 系统预设策略。

如果前提条件满足,在您点击 投递对象 下的 火山引擎日志服务(TLS) 时,你需要完成以下配置,使 CDN 将实时日志投递到您指定的日志主题中。参见下方的配置说明。

配置说明

配置说明
采集区域表示从哪个加速区域内的 CDN 节点上采集日志。当前,您仅可指定 中国内地,表示采集的是位于中国内地的 CDN 节点上的日志。

投递地域

表示 TLS 存储日志的物理地域,您可以选择离您较近的地域,降低日志检索的延迟。
您可以选择的地域有:

  • 华北2(北京)

  • 华东2(上海)

  • 华南1(广州)

默认地域为 "华北2(北京)"。

日志项目名称

表示日志归属的日志项目。日志项目好比文件夹,文件夹中包含一个或者多个文件(日志主题)。

默认的日志项目为 cdn-log。您也可以点击 创建日志项目 创建自定义日志项目,也可以从下拉列表中选择已有的项目。

日志项目的输入要求如下:

  1. 长度为 3 - 64 个字符,可以包含中文、小写字母、数字、下划线(_)和连字符(-)。中文占 3 个字符。

  2. 不能以连字符(-)或下划线(_)开头或结尾。

  3. 不能以 tls_tos_ 开头。

说明

下拉列表中仅展示您通过点击 创建日志项目 而创建的日志项目。您在 TLS 中创建的日志项目不会出现在列表中。

日志主题名称

表示存放日志的日志主题。日志主题好比文件,包含在文件夹(日志项目)中。

日志主题的输入要求与日志项目的输入要求相同。

日志存储时长

表示日志在 TLS 的存储时长,范围为 1 - 3649,单位是天。

如果您输入 3650,表示日志将永久保存。

采样率

表示日志采样率,范围为 0.00 - 100.00,精确到 2 位小数。

采样率指的是投递的日志比例。例如,您设置采样率为 10,则意味着在 CDN 节点上每采集 100 条日志,CDN 会随机选择 10 条日志投递到您指定的位置。

备注信息

表示该投递配置的备注。

备注的输入要求如下:

  1. 长度为 3 - 64 个字符,可以包含中文、字母、数字、下划线(_)和连字符(-)。中文占 3 个字符。

  2. 不能以连字符(-)或下划线(_)开头或结尾。

阿里云日志服务(SLS)

前提条件

如果您第一次将实时日志投递到 SLS,您需要完成以下步骤:

  1. 在您阿里云账号下开通 SLS 服务。

  2. 在 SLS 中创建好 Project 和 Logstore。

  3. 获取您阿里云账号的 AccessKey ID 和 AccessKey Secret。该账号需要有操作 SLS 的权限。

如果您已完成了以上步骤,在您点击 投递对象 下的 阿里云日志服务(SLS) 时,你需要完成以下配置,使 CDN 将实时日志投递到您指定的 Logstore 中。参见下方的配置说明。

配置说明

配置说明
采集区域表示从哪个加速区域内的 CDN 节点上采集日志。当前,您仅可指定 中国内地,表示采集的是位于中国内地的 CDN 节点上的日志。

Endpoint

表示 Project 的公网域名。例如 cn-beijing.log.aliyuncs.com

Endpoint 的开头和结尾不能是空格。

Project表示您创建的 Project,长度不能超过 64 个字符。
Logstore表示您创建的 Logstore,长度不能超过 64 个字符。
AccessKey ID表示您阿里云账号的 AccessKey ID,长度不能超过 128 个字符。
AccessKey Secret表示您阿里云账号的 AccessKey Secret,长度不能超过 128 个字符。

采样率

表示日志采样率,范围为 0.00 - 100.00,精确到 2 位小数。

采样率指的是投递的日志比例。例如,您设置采样率为 10,则意味着在 CDN 节点上每采集 100 条日志,CDN 会随机选择 10 条日志投递到您指定的位置。

备注信息

表示该投递配置的备注。

备注的输入要求如下:

  1. 长度为 3 - 64 个字符,可以包含中文、字母、数字、下划线(_)和连字符(-)。中文占 3 个字符。

  2. 不能以连字符(-)或下划线(_)开头或结尾。

HTTP 服务器

前提条件

  • 您已获取了该 HTTP 服务器的访问点。如果 HTTP 服务器需要对请求进行鉴权,您还需要获取鉴权密钥。

  • HTTP 服务器已实施下方描述的签名算法。在收到 CDN 发送的日志投递请求时,HTTP 服务器对请求进行鉴权。

配置说明

说明

在您完成配置后,请点击 推送 以测试您的配置是否有效。只有测试通过,您才能继续下一步。

配置说明
采集区域表示从哪个加速区域内的 CDN 节点上采集日志。当前,您仅可指定 中国内地,表示采集的是位于中国内地的 CDN 节点上的日志。
接口地址表示 HTTP 服务器的访问点、端口和路径,端口和路径是可选的。访问点必须以 http:// 或者 https:// 开头,开头和结尾不能包含空格,长度不超过 1,024 个字符。例如,https://www.example.com:8080/cdn-logs
文件压缩表示在 CDN 投递日志时,是否启用 GZip 压缩。如果 HTTP 服务器可以处理经 GZip 压缩的内容,您可以启用文件压缩,以减小投递的日志大小。
HTTP 服务器鉴权表示 HTTP 服务器是否需要对请求鉴权。

鉴权 Key

如果 HTTP 服务器鉴权 为启用,该配置会出现。鉴权 Key 用于计算签名,Key 的长度为 6 - 40 个字符。鉴权 Key 只有 HTTP 服务器和客户端知晓。

参见下方的鉴权流程与签名算法。

采样率

表示日志采样率,范围为 0.00 - 100.00,精确到 2 位小数。

采样率指的是投递的日志比例。例如,您设置采样率为 10,则意味着在 CDN 节点上每采集 100 条日志,CDN 会随机选择 10 条日志投递到您指定的位置。

自定义 HTTP 请求头

表示 CDN 在向 HTTP 服务器投递日志时,请求中需要包含的特定头部。您最多可以添加 10 个头部。

头部不能是 User-Agent,头部值不能以 x-bdcdn- 开头,也不能超过 1,024 个字符。

备注信息

表示该投递配置的备注。

备注的输入要求如下:

  1. 长度为 3 - 64 个字符,可以包含中文、字母、数字、下划线(_)和连字符(-)。中文占 3 个字符。

  2. 不能以连字符(-)或下划线(_)开头或结尾。

鉴权流程与签名算法

鉴权流程

  1. 在发送日志投递请求前,CDN 基于鉴权 Key 和签名算法计算签名。额外参与签名计算的字段有当前时间戳(timestamp)、接口地址中的路径(uri)、CDN 随机生成的整数(rand)。rand 的范围是 0 - 2147483647。

  2. 向 HTTP 服务器发送 POST 请求。

    • 请求 URL 中包含 auth_key 查询参数,参数值的格式为 timestamp-rand-signature。其中,signature 就是签名。
    • 请求 URL 的格式为 http://http_server_address[:port]/[uri]?auth_key=timestamp-rand-md5hash
      请求 URL 示例:http://https://www.example.com:8080/cdn-logs?auth_key=1744870608-1a2c!=A?1-6459280fed54315c2960f9ae2e91807d
    • 请求正文中包含多条日志,日志之间使用 \n 分隔。
  3. 收到请求后,HTTP 服务器基于鉴权 Key 以及从请求中获取的当前时间和随机数计算签名。

  4. HTTP 服务器判断这两个签名是否相同。如果签名相同,则表示鉴权成功。

签名算法

  • MD5(uri-timestamp-rand-key)

签名示例

假设:

  • 接口地址为 https://www.example.com:8080/cdn-logs

  • 鉴权 Key 为 1a2c!=A?1

  • 请求的发送时间(timestamp)为 1744870608

  • CDN 随机生成的整数(rand)为 14567

则签名的计算公式为 MD5(/cdn-logs-1744870608-14567-1a2c!=A?1),计算出的签名为 6459280fed54315c2960f9ae2e91807d

说明

如果接口地址中不包含路径,则签名计算公式为 MD5(-1744870608-14567-1a2c!=A?1)

步骤二:关联域名

在该步骤中,您指定投递哪些加速域名的实时日志。

  • 如果您要投递所有加速域名的实时日志,请设置 关联方式按账号关联。对于您后续在 CDN 中添加的域名,这些域名的实时日志也会被投递。

  • 如果您要投递指定加速域名的实时日志,请设置 关联方式按域名关联,然后勾选这些加速域名。您最多可以勾选 200 个加速域名。

子用户权限说明

在步骤二中,子用户只能添加其有权限操作的加速域名。另外,假设一个子用户被授予的相关策略存在项目限制(如下图所示),也就是说该子用户有权限访问的是指定的加速域名。在这个情况下,该子用户无法使用 按账号关联

查看日志投递任务

在您创建投递任务后,您的任务就出现在任务列表中了。

  • 如果某个任务配置需要调整,您可以在 操作 列上,点击 编辑

  • 要查看投递任务的配置,您可以在相应任务的 投递信息 列上,点击 展开查看

  • 对于投递到 TLS 的任务,您可以点击 操作 列上的 检索,然后在日志检索页面对日志进行检索和分析,参见 日志检索示例