查看 CloudFront 和 Lambda@Edge 指标
您可以在 CloudFront 控制台中查看有关您的 CloudFront 分配和 Lambda@Edge 函数的运行指标。要查看这些指标,请参阅 CloudFront 控制台中的监控页面
查看默认的 CloudFront 分配指标
所有 CloudFront 分配都包含以下默认指标,无需额外费用:
- 请求
-
针对所有 HTTP 方法以及 HTTP 和 HTTPS 请求,CloudFront 收到的查看器请求总数。
- 已下载字节
-
查看器针对
GET
、HEAD
和OPTIONS
请求下载的字节总数。 - 已上传字节
-
查看器通过 CloudFront 使用
POST
和PUT
请求上传到您的源的字节总数。 - 4xx 错误率
-
响应的 HTTP 状态代码为
4xx
的所有查看器请求所占的百分比。 - 5xx 错误率
-
响应的 HTTP 状态代码为
5xx
的所有查看器请求所占的百分比。 - 总错误率
-
响应的 HTTP 状态代码为
4xx
或5xx
的所有查看器请求所占的百分比。
在 CloudFront 控制台的监控页面上
您可以通过执行以下操作来自定义图表:
-
要更改图表中所显示信息的时间范围,请选择 1h(1 小时)、3h(3 小时)或其他范围,或指定自定义范围。
-
要更改 CloudFront 更新图表中信息的频率,请选择刷新图标旁边的下箭头,然后选择一个刷新间隔。默认刷新频率为 1 分钟,不过您可以选择 10 秒、2 分钟或其他选项。
要在 CloudWatch 控制台中查看 CloudFront 图形,请选择添加到控制面板。
查看其他 CloudFront 分配指标
除了默认指标外,您还可以启用其他指标,但需要支付额外费用。有关成本的更多信息,请参阅估算其他 CloudFront 指标的成本。
必须为每个分配单独启用这些额外指标:
- 缓存命中率
-
由 CloudFront 从其缓存提供内容的所有可缓存请求的百分比。HTTP
POST
和PUT
请求及错误不视为可缓存请求。 - 来源延迟
-
对于从来源提供内容(而非从 CloudFront 缓存提供内容)的请求,从 CloudFront 接收请求,到开始向网络(而非查看器)提供响应为止所花费的总时间。这也称为首字节延迟或 time-to-first-byte。
- 按状态代码列出的错误率
-
响应的 HTTP 状态代码为
4xx
或5xx
范围中的特定代码的所有查看器请求所占的百分比。此指标适用于以下所有错误代码:401
、403
、404
、502
、503
和504
。
启用其他指标
您可以使用 AWS 命令行界面 (AWS CLI) 或 CloudFront API 在 CloudFront 控制台中启用其他指标。
启用其他指标
-
登录 AWS 管理控制台,然后在 CloudFront 控制台中打开监控页面
。 -
选择要为其启用其他指标的分配,然后选择 View distribution metrics (查看分配指标)。
-
选择 Enable additional metrics (启用其他指标)。
-
在 Enable additional metrics (启用其他指标) 窗口中,选择 Enable (启用),然后选择 Save (保存)。
启用其他指标后,它们将显示在图表中。在每个图表上,总计值按 1 分钟的粒度显示。除了查看图表外,您还可以将指标报告下载为 CSV 文件。
您可以通过执行以下操作来自定义图表:
-
要更改图表中所显示信息的时间范围,请选择 1h(1 小时)、3h(3 小时)或其他范围,或指定自定义范围。
-
要更改 CloudFront 更新图表中信息的频率,请选择刷新图标旁边的下箭头,然后选择一个刷新间隔。默认刷新频率为 1 分钟,不过您可以选择 10 秒、2 分钟或其他选项。
要在 CloudWatch 控制台中查看 CloudFront 图形,请选择添加到控制面板。
要使用 AWS 命令行界面 (AWS CLI) 管理其他指标,请使用以下命令之一。
为分配启用其他指标
-
使用 create-monitoring-subscription 命令,如以下示例所示。将
EDFDVBD6EXAMPLE
替换为要为其启用其他指标的分配的 ID。aws cloudfront create-monitoring-subscription --distribution-id
EDFDVBD6EXAMPLE
--monitoring-subscription RealtimeMetricsSubscriptionConfig={RealtimeMetricsSubscriptionStatus=Enabled}
查看是否为分配启用了其他指标
-
使用 get-monitoring-subscription 命令,如以下示例所示。将
EDFDVBD6EXAMPLE
替换为您正在检查的分配的 ID。aws cloudfront get-monitoring-subscription --distribution-id
EDFDVBD6EXAMPLE
为分配禁用其他指标
-
使用 delete-monitoring-subscription 命令,如以下示例所示。将
EDFDVBD6EXAMPLE
替换为要为其禁用其他指标的分配的 ID。aws cloudfront delete-monitoring-subscription --distribution-id
EDFDVBD6EXAMPLE
要使用 CloudFront API 管理其他指标,请使用下列 API 操作之一。
-
要为分配启用其他指标,请使用 CreateMonitoringSubscription。
-
要查看是否为分配启用了其他指标,请使用 GetMonitoringSubscription。
-
要为分配禁用其他指标,请使用 DeleteMonitoringSubscription。
有关这些 API 调用的更多信息,请参阅 AWS 软件开发工具包或其他 API 客户端的 API 参考文档。
估算其他 CloudFront 指标的成本
当您为某个分配启用其他指标时,CloudFront 会向美国东部(弗吉尼亚北部)区域的 CloudWatch 发送最多 8 个指标。CloudWatch 为每个指标收取较低的固定费率。每个月对每个指标仅收取一次该费率(每个分配最多
8 个指标)。这是固定费率,因此无论 CloudFront 分配接收或发送的请求或响应数量如何,您的成本都保持不变。有关每个指标的费率,请参阅 Amazon CloudWatch 定价页面
查看默认的 Lambda@Edge 函数指标
在 CloudFront 控制台的监控页面
-
Lambda@Edge 的
5xx
错误率 -
Lambda 执行错误
-
Lambda 无效响应
-
Lambda 节流
图表包含调用数、错误、限制等信息。在每个图表上,总计值按 1 分钟的粒度显示,按 AWS 区域分组。
如果您看到错误出现峰值需要调查,可以选择一个函数,然后按 AWS 区域查看日志,直至您确定哪个函数在哪个 AWS 区域中导致了问题。有关排查 Lambda@Edge 错误的更多信息,请参阅:
您可以通过执行以下操作来自定义图表:
-
要更改图表中所显示信息的时间范围,请选择 1h(1 小时)、3h(3 小时)或其他范围,或指定自定义范围。
-
要更改 CloudFront 更新图表中信息的频率,请选择刷新图标旁边的下箭头,然后选择一个刷新间隔。默认刷新频率为 1 分钟,不过您可以选择 10 秒、2 分钟或其他选项。
要在 CloudWatch 控制台中查看图表,请选择添加到控制面板。您必须使用美国东部(弗吉尼亚北部)区域 (us-east-1) 在 CloudWatch 控制台中查看图表。