

# 查看 CloudFront 常用对象报告
<a name="popular-objects-report"></a>

查看 Amazon CloudFront 常用对象报告，以便查看在过去 60 天中指定日期范围内分配的 50 个最常用对象。您还可以查看有关这些对象的统计数据，包括以下信息：
+ 对象的请求数
+ 命中和未命中次数
+ 命中率
+ 为未命中提供的字节数
+ 提供的总字节数
+ 未完成下载次数
+ 按 HTTP 状态代码（2xx、3xx、4xx 和 5xx）列出的请求数

这些统计数据与 CloudFront 访问日志来自同一来源。但是，您无需启用[访问日志记录](AccessLogs.md)即可查看常见对象。

**Topics**
+ [在控制台中查看 CloudFront 常用对象报告](#popular-objects-howto)
+ [CloudFront 如何计算常用对象统计数据](#popular-objects-calculate)
+ [以 CSV 格式下载数据](#popular-objects-csv)
+ [常用对象报告中的数据与 CloudFront 标准日志（访问日志）中数据的相关度](#popular-objects-data)

## 在控制台中查看 CloudFront 常用对象报告
<a name="popular-objects-howto"></a>

您可以在控制台中查看 CloudFront 常用对象报告。<a name="popular-objects-report-procedure"></a>

**查看 CloudFront 分配的常用对象**

1. 登录 AWS 管理控制台，并通过以下网址打开 CloudFront 控制台：[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)。

1. 在导航窗格中，单击**常用对象**。

1. 在 **CloudFront 常用对象报告**窗格中，对于**开始日期**和**结束日期**，请选择您要显示常用对象列表的日期范围。您可以选择前 60 天内的任何日期范围。

   日期和时间采用协调世界时 (UTC)。

1. 在**分配**列表中，选择要显示常用对象列表的分配。

1. 选择**更新**。

## CloudFront 如何计算常用对象统计数据
<a name="popular-objects-calculate"></a>

为了获取您的分配中前 50 个对象的准确计数，CloudFront 会从午夜开始，以 10 分钟为间隔来统计所有对象的请求，并在接下来 24 小时不间断地汇总前 150 个对象。（CloudFront 还会保留前 150 个对象在 60 天内的每日总计。）

在列表底部附近，不断有对象进入或跌出该列表，因此，这些对象的总计为近似值。在 150 个对象列表中，前面的 50 个对象可能会在列表内上升或下降，但很少会跌出列表，因此，这些对象的总计通常会更可靠。

如果某个对象在一天内跌出前 150 个对象列表后又重新回到列表中，CloudFront 会添加该对象从列表中消失的那段时间内估计的请求数。该估计值基于列表底部的任一对象在该时间段内收到的请求数。

如果该对象在当天稍晚时候进入了前 50 个对象之列，则在其尚未进入前 150 个对象之列时，CloudFront 收到的估计请求数通常会导致常用对象报告中的请求数超过该对象在访问日志中显示的请求数。

## 以 CSV 格式下载数据
<a name="popular-objects-csv"></a>

您能够以 CSV 格式下载常用对象报告。本部分将介绍如何下载该报告并详细说明其中的各个值。<a name="popular-objects-csv-procedure"></a>

**以 CSV 格式下载常用对象报告**

1. 在查看常用对象报告时，选择 **CSV**。

1. 在**打开*文件名***对话框中，选择是要打开还是保存文件。

### 该报告的相关信息
<a name="popular-objects-csv-header"></a>

该报告的前几行包含以下信息：

**版本**  
该 CSV 文件格式的版本。

**报告**  
报告的名称。

**DistributionID**  
您运行报告的分配 ID。

**StartDateUTC**  
您运行报告的日期范围的开始日期，采用协调世界时 (UTC)。

**EndDateUTC**  
您运行报告的日期范围的结束日期，采用协调世界时 (UTC)。

**GeneratedTimeUTC**  
您运行报告的日期和时间，采用协调世界时 (UTC)。

### 常用对象报告中的数据
<a name="popular-objects-csv-data"></a>

该报告包括以下值：

**DistributionID**  
您运行报告的分配 ID。

**FriendlyName**  
分配的备用域名 (CNAME)（如果有）。如果分配没有备用域名，则该列表会包括该分配的原始域名。

**对象**  
对象 URL 中的最后 500 个字符。

**RequestCount**  
该对象的请求总数。

**HitCount**  
从 CloudFront 边缘缓存内为其提供对象的查看器请求数。

**MissCount**  
对象目前不在边缘缓存中，因此 CloudFront 必须从源获取对象的查看器请求数。

**HitCountPct**  
`HitCount` 值占 `RequestCount` 值的百分比。

**BytesFromMisses**  
系统为响应不在边缘缓存中的这类对象请求而提供给查看器的字节数。

**TotalBytes**  
CloudFront 为响应所有 HTTP 方法的所有此类对象请求而提供给查看器的字节总数。

**IncompleteDownloadCount**  
查看器已启动但未完成对象下载的此类对象的查看器请求数。

**HTTP2xx**  
HTTP 状态代码为 2xx 值（已成功）的查看器请求数。

**HTTP3xx**  
HTTP 状态代码为 3xx 值（要求执行其他操作）的查看器请求数。

**HTTP4xx**  
HTTP 状态代码为 4xx 值（客户端错误）的查看器请求数。

**HTTP5xx**  
HTTP 状态代码为 5xx 值（服务器错误）的查看器请求数。

## 常用对象报告中的数据与 CloudFront 标准日志（访问日志）中数据的相关度
<a name="popular-objects-data"></a>

以下列表显示了 CloudFront 控制台中常用对象报告的值与 CloudFront 访问日志中值的对应情况。有关 CloudFront 访问日志的更多信息，请参阅[访问日志（标准日志）](AccessLogs.md)。

**URL**  
查看器用来访问对象的 URL 中的最后 500 个字符。

**请求**  
对象的请求总数。该值通常与 CloudFront 访问日志中对象的 `GET` 请求数密切对应。

**命中数**  
从 CloudFront 边缘缓存提供对象的查看器请求数。在访问日志中，此类请求的 `x-edge-response-result-type` 值为 `Hit`。

**未命中数**  
对象不在边缘缓存中，因此 CloudFront 从源中检索了对象的查看器请求数。在访问日志中，此类请求的 `x-edge-response-result-type` 值为 `Miss`。

**命中率**  
**Hits** 列中的值占 **Requests** 列中值的百分比。

**未命中的字节数**  
对于在收到请求时不在边缘缓存中的对象，向查看器提供的字节数。在 CloudFront 访问日志中，**未命中的字节数**是 `sc-bytes` 值为 `x-edge-result-type` 的请求的 `Miss` 列中的值之和。

**总字节数**  
CloudFront 为响应所有 HTTP 方法的所有对象请求而提供给查看器的总字节数。在 CloudFront 访问日志中，**总字节数**是同一时间段内所有请求的 `sc-bytes` 列中的值之和。

**未完成的下载数量**  
未完成所请求对象下载的查看器请求数。通常，下载未完成是因为查看器取消了下载，例如，通过单击其他链接或关闭浏览器。在 CloudFront 访问日志中，此类请求在 `200` 列中具有 `sc-status` 值，在 `Error` 列中具有 `x-edge-result-type` 值。

**2xx**  
HTTP 状态代码为 `2xx`、`Successful` 的请求数。在 CloudFront 访问日志中，状态代码显示在 `sc-status` 列中。

**3xx**  
HTTP 状态代码为 `3xx` `Redirection` 的请求数。`3xx` 状态代码表示需要执行其他操作。例如，301 (Moved Permanently) 表示请求的对象已移到其他位置。

**4xx**  
HTTP 状态代码为 `4xx` `Client Error` 的请求数。`4xx` 状态代码表示客户端明显出现错误。例如，404 (Not Found) 表示无法找到客户端请求的对象。

**5xx**  
HTTP 状态代码为 `5xx` `Server Error` 的请求数。`5xx` 状态代码表示源服务器未填充请求。例如，503 (Service Unavailable) 表示源服务器当前不可用。