查看公有托管区域的 DNS 查询指标 - Amazon Route 53
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查看公有托管区域的 DNS 查询指标

您可以查看 Route 53 对指定的公有托管区域或公有托管区域组合所响应的 DNS 查询总数。指标以形式显示,可让您查看图表,选择要查看的时间段以及以各种其他方式自定义指标。您还可以创建警报和配置通知,以便在指定时间段内 DNS 查询数量超过或低于指定级别时收到通知。

注意

Route 53 会自动将所有公有托管区域的 DNS 查询数量发送到 CloudWatch,因此您无需进行任何配置即可查看查询指标。DNS 查询指标不收费。

哪些 DNS 查询计算在内?

指标仅包括 DNS 解析程序转发到 Route 53 的查询。如果 DNS 解析程序已缓存对查询 (如 example.com 的负载均衡器的 IP 地址) 的响应,则解析程序将继续返回缓存的响应而不将查询转发到 Route 53,直到相应记录的 TTL 到期为止。

根据为域名 (example.com) 或子域名称 (www.example.com) 提交的 DNS 查询的数量、用户正在使用的解析程序以及记录的 TTL,DNS 查询指标可能只包含提交到 DNS 解析程序的数千个查询中的一个查询的信息。有关 DNS 的工作方式的更多信息,请参阅Amazon Route 53 如何为您的域路由流量

托管区域的查询指标何时开始显示在 CloudWatch 中?

创建托管区域后,托管区域最长可能需要经过几个小时,才会显示在 CloudWatch 中。此外,您必须为托管区域中的记录提交 DNS 查询来显示数据。

指标仅在美国东部(弗吉尼亚北部)提供

要在控制台中获取指标,您必须为区域选择美国东部(弗吉尼亚北部)。要使用AmazonCLI 时,您必须保留Amazon区域未指定,或指定us-east-1作为区域。如果选择任何其他区域,Route 53 指标不可用。

DNS 查询的 CloudWatch 指标和维度

有关 DNS 查询的 CloudWatch 指标和维度的信息,请参阅。使用 Amazon CloudWatch 监控托管区域. 有关 CloudWatch 指标的信息,请参阅使用 Amazon CloudWatch 指标中的Amazon CloudWatch 用户指南.

获取有关 DNS 查询的更详细数据

要获取有关 Route 53 响应的每个 DNS 查询的更多详细信息,包括以下值,可以配置查询日志记录:

  • 已请求的域或子域

  • 请求的日期和时间

  • DNS 记录类型(例如 A 或 AAAA)

  • 对 DNS 查询做出响应的 Route 53 边缘站点

  • DNS 响应代码,例如 NoErrorServFail

有关更多信息,请参阅 公有 DNS 查询日志记录

如何获取 DNS 查询指标

在您创建托管区域后不久,Amazon Route 53 开始每分钟发送一次指标和维度到 CloudWatch。您可以使用以下过程在 CloudWatch 控制台中查看指标,或使用Amazon Command Line Interface(Amazon CLI)。

在 CloudWatch 控制台中查看公有托管区域的 DNS 查询指标

要在 CloudWatch 控制台中查看公有托管区域的 DNS 查询指标,请执行以下过程。

在 CloudWatch 控制台中查看公有托管区域的 DNS 查询指标

  1. 登录到 Amazon Web Services Management Console 并通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

  2. 在导航窗格中,选择 Metrics

  3. 在存储库的Amazon控制台右上角的区域列表,选择美国东部(弗吉尼亚北部). 如果您选择任何其他Amazon区域。

  4. All metrics (所有指标) 选项卡上,选择 Route 53

  5. 选择 Hosted Zone Metrics (托管区域指标)

  6. 选中一个或多个具有名为 DNSQueries 的指标的托管区域的复选框。

  7. Graphed metrics (图形化指标) 选项卡上,更改适用的值以查看所需格式的指标。

    对于 Statistic (统计数据),选择 SumSampleCount;这些统计数据均显示相同的值。

使用 Amazon CLI 获取 DNS 查询指标

要使用 Amazon CLI 获取 DNS 查询指标,您可以使用 get-metric-data 命令。请注意以下几点:

  • 您可以在单独的 JSON 文件中为命令指定大多数值。有关更多信息,请参阅 get-metric-data

  • 该命令为您在 JSON 文件中为 Period 指定的每个间隔返回一个值。Period 以秒为单位,因此,如果指定五分钟的时间段并为 Period 指定 60,则会得到五个值。如果您指定一个五分钟的时间段,并为 Period 指定 300,则会得到一个值。

  • 在 JSON 文件中,您可以为 Id 指定任何值。

  • 要么离开Amazon区域未指定,或指定us-east-1作为区域。如果选择任何其他区域,Route 53 指标不可用。有关更多信息,请参阅 。配置AmazonCLI中的Amazon Command Line Interface用户指南.

下面是 Amazon CLI 命令,可以使用该命令获取 2019 年 5 月 1 日 4:01 到 4:07 之间的五分钟时间段的 DNS 查询指标。metric-data-queries 参数引用命令后面的示例 JSON 文件。

aws cloudwatch get-metric-data --metric-data-queries file://./metric.json --start-time 2019-05-01T04:01:00Z --end-time 2019-05-01T04:07:00Z

下面是示例 JSON 文件:

[ { "Id": "my_dns_queries_id", "MetricStat": { "Metric": { "Namespace": "AWS/Route53", "MetricName": "DNSQueries", "Dimensions": [ { "Name": "HostedZoneId", "Value": "Z1D633PJN98FT9" } ] }, "Period": 60, "Stat": "Sum" }, "ReturnData": true } ]

下面是此命令的输出。请注意以下几点:

  • 命令中的开始时间和结束时间涵盖了七分钟的时间段,从 2019-05-01T04:01:00Z2019-05-01T04:07:00Z

  • 只有 6 个返回值。2019-05-01T04:05:00Z 没有值,因为该分钟内没有任何 DNS 查询。

  • JSON 文件中指定的 Period 值为 60(秒),因此以一分钟为间隔报告值。

{ "MetricDataResults": [ { "Id": "my_dns_queries_id", "StatusCode": "Complete", "Label": "DNSQueries", "Values": [ 101.0, 115.0, 103.0, 127.0, 111.0, 120.0 ], "Timestamps": [ "2019-05-01T04:07:00Z", "2019-05-01T04:06:00Z", "2019-05-01T04:04:00Z", "2019-05-01T04:03:00Z", "2019-05-01T04:02:00Z", "2019-05-01T04:01:00Z" ] } ] }