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

实时日志概述

最近更新时间2024.03.19 11:04:22

首次发布时间2022.10.24 14:29:38

本文档介绍了如何在火山引擎内容分发网络中启用实时日志功能。

说明

实时日志是白名单功能。如果您需要使用该功能,请 提交工单

什么是实时日志

内容分发网络已与火山引擎日志服务整合,可以将加速域名的请求日志实时投递到日志服务。实时日志从日志生成到日志投递的的时间不超过 5 分钟。同时,内容分发网络集成了日志服务的日志检索和图表分析功能。您可以在内容分发网络中使用日志服务的这些功能对日志进行检索和分析。

前提条件

要启用实时日志,您需要在内容分发网络中完成以下操作:

  1. 开通实时日志

  2. 创建日志主题。在日志服务中,日志是存放在日志主题中的。在您创建日志主题后,内容分发网络就能将请求日志投递到日志主题了。

同时,您的加速域名需要有访问请求。这样,内容分发网络才能对访问请求生成日志。

关于日志中包含的字段,参见 日志字段。由于内容分发网络集成了日志服务的日志检索页面,您可以在内容分发网络中对投递的日志进行检索。参见 日志检索示例

实时日志优势

  • 低延时:99% 的实时日志的延时在 5 分钟以内。您可以使用实时日志对加速域名的访问数据进行分析,以便及时定位问题并应对。
  • 一站式服务:内容分发网络已与日志服务整合,提供了集成日志投递,日志存储,日志分析的一站式服务。您无需经历在使用离线日志时的复杂流程。该流程包括手动日志下载,安排日志存储,选择日志分析工具等。

名词概念

日志集:日志集对应日志服务中的日志项目。日志集的功能就像一个文件夹,里面包含了日志主题。

日志主题:日志主题对应的就是日志文件。文件中记录了加速域名的请求日志。内容分发网络将采集的请求日志投递到日志主题中。

使用场景

实时日志可以帮助您分析加速域名遇到的问题,也可以帮助您了解用户是如何访问您的加速域名。除了对实时日志进行过滤,您还可以对日志数据进行处理,满足不同场景下的日志分析需求。

日志分析场景作用描述
过滤指定条件的日志指定一个或者多个条件,查找符合条件的日志。该数据可以帮助您了解某个 URL 或某个用户在指定时间范围内的访问情况,以便及时定位问题。
监测 CDN 服务指标该数据可以帮助您了解 CDN 服务的质量以及用户的访问效率,以便您及时发现异常。访问效率包括缓存命中率、CDN 响应耗时、下载速度等。
监测 CDN 访问错误如果用户在访问加速域名时出现了问题,该数据可以帮助您定位问题的原因。例如 URL 问题、源站故障、源站文件异常等。
获取热门访问该数据可以帮助您了解您站点的热门访问。例如热门域名、热门 URI、热门访客IP、热门 Referer 等。

实时日志与日志下载的区别

实时日志和日志下载是内容分发网络的日志管理功能提供的模块。这两个模块采集的都是加速域名的请求日志。
alt
这两个模块的区别如下。

日志下载实时日志
使用目的离线日志下载。实时日志检索和分析。
实时性内容分发网络按小时粒度将采集日志汇总成日志文件供您下载。因此,日志的延时最长会超过 1 个小时。内容分发网络将日志实时投递到日志服务。这样,您就可以对日志进行实时查询。日志的延时在 5 分钟以内。
使用成本您需要自行下载和存储离线日志。您还需要有分析工具来帮助您分析日志。实时日志是存储在日志服务的。您可以使用日志服务的检索功能对日志进行过滤与分析。实时日志虽然是收费的,但是费用很低。

实时日志计费

实时日志功能是收费的。费用由以下部分组成:

  • 日志投递的费用。内容分发网络对投递的日志进行计费。计费单位是万条。关于日志投递计费的详细信息,参见 内容分发网络的计费说明

  • 日志服务的费用。日志服务对日志存储,日志的读写流量等进行计费。关于日志服务计费的详细信息,参见 日志服务的计费说明

开通实时日志

日志服务与内容分发网络是火山引擎下不同的服务。在使用实时日志,您需要先授权日志服务访问内容分发网络。

说明

以下步骤必须使用主账号操作。

  1. 登录 内容分发网络控制台

  2. 在左侧导航栏,点击 日志管理

  3. 日志查询 页面,点击 实时日志 标签页。

  4. 实时日志 标签页,点击 立即开通

在您开通实时日志后,内容分发网络会在以下的每个日志投递地域创建一个日志集:

  • 北京
  • 上海
  • 广州

对于内容分发网络创建的日志集,有以下说明:

  • 每个日志投递地域中的日志集的名称都是 cdn-log

  • 这些日志集的 ID 是不同的。

  • 这些日志集的缓存时间是 7 天。

日志字段

内容分发网络网络投递的请求日志包含的字段和字段说明见下表。

字段说明示例
__content__无效字段,可以忽略。
__path__
__source__
time表示 CDN 完成响应请求的时间,也就是 CDN 发送完文件最后一个字节的时间。23/Oct/2022:17:48:59 +0800
client_ip表示发送请求的客户端的 IP 地址。116.170.120.238
ds_req_time表示内容分发网络的响应时长。该时长记录的是从内容分发网络收到用户请求到响应用户之间的时间。单位为秒。1.2

ds_http_method

表示请求所使用的方法。该参数常见的取值有 GETPOSTHEADPUT

GET

ds_http_scheme

表示请求所使用的协议。该参数有以下取值:

  • HTTP

  • HTTPS

HTTPS

domain表示请求的加速域名。cdn.example.com
ds_http_uri表示请求 URL 中的路径和查询字符串。路径以斜杠(/)开头。假设请求 URL 是 https://example.com/img/volcano.png?version=1。此时,该参数的值是 /img/volcano.png?version=1/volcano.png?version=1

ds_http_protocol

表示请求所使用的协议的信息。该参数有以下取值:

  • HTTP/1.0

  • HTTP/1.1

  • HTTP/2

HTTP/1.1

ds_http_status表示内容分发网络的响应状态码。200
ds_http_resp_size表示内容分发网络响应包的大小。单位是 byte。573

ds_http_bd_status_hit

表示请求是否命中内容分发网络的缓存。该参数的取值如下:

  • HIT:表示请求命中了缓存。

  • MISS:表示请求没有命中缓存。

HIT

ds_http_range表示请求中的 Range 头的值。如果 Range 头不存在,该参数值为 -bytes=200-1000
ds_http_referer表示请求中的 Referer 头的值。如果 Referer 头不存在,该参数值为 -https://example.com/index?version=123
ds_http_ua表示请求中的 User-Agent 头的值。如果 User-Agent 头不存在,该参数值为 -curl/7.85.0
ds_http_resp_content_type表示请求中的 Content-Type 头的值。如果 Content-Type 头不存在,该参数值为 -image/jpeg
ds_http_resp_content_length表示请求的文件的大小。单位是 byte。500
client_ip_country表示客户端 IP 地址所归属的国家。中国
client_ip_province表示客户端 IP 地址所归属的省份。北京
client_ip_isp表示客户端 IP 地址所归属的网络运营商。电信
ds_http_uri_query表示请求 URL 中的查询字符串。version=1&colar=red
ds_http_uri_path表示请求 URL 中的路径。路径以斜杠(/)开头。假设请求 URL 是 https://example.com/img/volcano.png?version=1。此时,该参数的值是 /img/volcano.png/img/volcano.png
client_port表示请求所使用的客户端端口。37030