本文档介绍了在火山引擎内容分发网络(CDN)中,指标是如何定义和统计的。指标分为两大类,一类是针对 用户请求 的,一类是针对 回源请求 的。回源请求就是 CDN 向源站发送的请求。
在缓存节点,CDN 对这些指标在数据传输层进行数据统计。这些指标数据反映的是 CDN 在与用户以及源站交互过程中实际传输的数据。在 CDN 中,以下位置提供的内容是基于这些指标数据的:
另外,CDN 也提供了访问日志供您下载。在访问日志中,每条记录表示一个请求,包含与该请求相关的字段值。关于这些字段的定义,参见 日志下载。需要留意的是,访问日志是缓存节点在应用层记录的。基于访问日志而统计的数据会比在数据传输层统计的数据少 10%。原因是在数据传输层统计的数据额外包括了以下附加数据:
关于这些附加数据的详情,参见 详情。CDN 无法在应用层获取这些附加数据。在本文中对指标数据的计算方法进行描述时,我们提供了基于访问日志字段的计算方式,仅供参考。
在阅读本文前,请留意以下定义。
StartTime)和结束时间(EndTime)之间的统计时间段。StartTime)、结束时间(EndTime)、以及统计时间粒度(Interval)决定的统计时间段。指标数据是基于实际统计时间段而统计的。Interval)将实际统计时间段拆分成一系列的时间区间。关于这些定义的详细描述:
表示 CDN 向用户传输的数据量,单位是 bytes。该数据量是 CDN 响应中响应头大小和响应正文大小之和。
流量是基于访问日志中的 {ds_http_resp_size} 字段而统计的。该字段值的单位是 bytes。
细分数据表示每个时间区间内的流量。
汇总数据表示实际统计时间段内的流量总和。
表示基于 CDN 向用户传输的数据量而计算的带宽,单位是 bps。
细分数据表示每个时间区间内的带宽。根据指定的统计时间粒度,带宽有两种计算方式:
{ds_http_resp_size} * 8) / 时长汇总数据表示在实际统计时间段内,所有时间区间内的带宽峰值。汇总数据的计算方式如下:
表示带宽峰值所在时间区间的开始时间。
表示 CDN 收到的所有用户请求的数量。
在访问日志中,记录条数就是请求数。
细分数据表示每个时间区间内的请求数量。
汇总数据表示在实际统计时间段内 CDN 收到的请求数总和。
对于 CDN 收到的所有用户请求,该指标表示这些请求的 QPS。
细分数据表示每个时间区间内的请求 QPS。根据指定的统计时间粒度,请求 QPS 有两种计算方式:
汇总数据表示在实际统计时间段内,所有时间区间内的请求 QPS 峰值。汇总数据的计算方式如下:
表示请求 QPS 峰值所在时间区间的开始时间。
在 CDN 对用户请求的响应中,该指标表示以下类别的状态码数量:
状态码数量是基于访问日志中的 {ds_http_status} 字段而统计的。
细分数据表示每个时间区间内的每个类别的状态码数量。
汇总数据表示在实际统计时间段内,每个类别的状态码数量总和。
表示 CDN 响应用户请求所耗费的平均时间,单位是毫秒(ms)。
对于一个用户请求,CDN 的响应耗时是以下两个时间点之间的时间跨度:
需要留意的是,该指标是在 CDN 侧统计的。
当 CDN 传输完响应的最后一个字节时,该时间点会被记录为该请求的响应完成时间。
响应时间就是访问日志中 {ds_req_time} 字段的值,单位是秒(s)。
细分数据表示每个时间区间内的平均响应时间。该指标数据是针对每个时间区间内 CDN 完成响应的请求统计的。
汇总数据表示实际统计时间段内的平均响应时间。汇总数据的计算方式如下:
表示 CDN 响应所有用户请求时的平均数据传输速度,单位是 Bps。该指标是对响应状态码是 2xx 的用户请求而统计的。
需要留意的是,该指标是在 CDN 侧统计的。
细分数据表示每个时间区间内的平均下载速度,是针对每个时间区间内完成文件传输的那些请求而统计的。
{ds_http_resp_size} / {ds_req_time}说明
在统计下载速度时,CDN 会排除响应时间小于 1 毫秒的请求,以避免数据偏差。
汇总数据表示实际统计时间段内的平均下载速度。汇总数据的计算方式如下:
表示 CDN 响应用户请求的平均数据传输速度,单位是 Bps。该指标是对所有用户请求而统计的。
需要留意的是,该指标是在 CDN 侧统计的。
对于一个用户请求,当 CDN 传输完响应的最后一个字节时,该时间点会被记录为该请求的响应完成时间。
细分数据表示每个时间区间内 CDN 的平均数据传输速度。该数据是根据 CDN 已经完成响应的用户请求统计的。
SUM({ds_http_resp_size}) / SUM({ds_req_time})说明
在统计传输速度时,CDN 会排除响应时间小于 1 毫秒的请求,以避免数据偏差。
汇总数据表示在实际统计时间段内的平均数据传输速度。汇总数据的计算方式如下:
流量命中率是基于以下传输数据量而统计的:
流量命中率以数值形式显示。例如,0.9999 表示 99.99%。
细分数据表示每个时间区间内的流量命中率。
{ds_http_resp_size} - 回源流量) / {ds_http_resp_size}关于 "回源请求流量" 的定义,参见 回源请求指标。
汇总数据表示实际统计时间段内的平均流量命中率。汇总数据的计算方式如下:
对于回源请求,细分数据与汇总数据的统计方式与 用户请求指标 相同,以下表格中仅列出这些指标的描述。
指标 | 描述 |
|---|---|
回源流量 | 表示源站向 CDN 传输的数据量,单位是 bytes。该数据量是对 CDN 收到的源站响应而统计,是响应头大小和响应正文大小之和。 |
回源带宽 | 表示基于源站向 CDN 传输的数据量而计算的带宽,单位是 bps。 |
回源请求数 | 表示回源请求的数量。 |
回源请求 QPS | 表示回源请求的 QPS。 |
源站状态码 | 表示在 CDN 收到的源站响应中,所有状态码的数量、2xx 状态码的数量、3xx 状态码的数量、4xx 状态码的数量、5xx 状态码的数量、每个状态码的数量。 |
源站 2xx 状态码 | 表示 2xx 状态码的数量以及该类别下每个状态码的数量。 |
源站3xx 状态码 | 表示 3xx 状态码的数量以及该类别下每个状态码的数量。 |
源站4xx 状态码 | 表示 4xx 状态码的数量以及该类别下每个状态码的数量。 |
源站 5xx 状态码 | 表示 5xx 状态码的数量以及该类别下每个状态码的数量。 |
表示 CDN 收到的基于 QUIC 的 HTTPS 请求数量。
在访问日志中,{ds_http_protocol} 是 HTTP/3 的记录条数就是 QUIC 请求数。
细分数据表示每个时间区间内的 QUIC 请求数量。
汇总数据表示在实际统计时间段内,所有时间区间内的 QUIC 请求数总和。汇总数据的计算方式如下:
表示 CDN 收到的 HTTPS 请求数量,包含 QUIC 请求数。
在访问日志中,{ds_http_scheme} 是 HTTPS 的记录条数就是 HTTPS 请求数。
细分数据表示每个时间区间内的 HTTPS 请求数量。
汇总数据表示在实际统计时间段内,所有时间区间内的 HTTPS 请求数总和。汇总数据的计算方式如下:
表示 CDN 向火山引擎日志服务投递的日志条数。该数量与 请求数 相同。
细分数据表示每个时间区间内的日志投递数。
汇总数据表示在实际统计时间段内,所有时间区间内的日志投递数总和。汇总数据的计算方式如下: