AWS Route53 - 获取简单指标,例如“过去 24 小时内的请求数”

AWS Route53 - 获取简单指标,例如“过去 24 小时内的请求数”

我的目标是获取针对 Route 53 托管区域的简单“每日请求数”值。

我认为没有直接的方法可以做到这一点。

我已经创建了查询日志,如下所述:https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html

但是,这是大量的日志记录,并且按全球边缘服务器进行拆分。我想要的只是“域名 example.com 在过去 24 小时内被查询了 40,000 次”和类似的指标。

这可能吗?记录似乎有点多余,我必须对所有子目录进行大量解析才能获得这种类型的总和。

答案1

对 Route53 的每个请求都会创建自己的日志条目,因此,您应该能够使用空指标过滤器随时间推移计算​​给定日志组中的日志条目,而不是进行解析。Amazon 文档解释了如何做到这一点这里。您可以让每个托管区域记录到其自己的日志组(以单独计算它们),或者可以让一些托管区域记录到同一个日志组(以一起计算它们或使用指标过滤器进行拆分)。

在控制台中:

 1. Open the CloudWatch console at
    https://console.aws.amazon.com/cloudwatch/.
 2. In the navigation pane, choose Logs.
 3. In the contents pane, select a log group, and then choose Create
    Metric Filter.
 4. On the Define Logs Metric Filter screen, leave Filter Pattern blank.
 5. Choose Assign Metric, and then on the Create Metric Filter and
    Assign a Metric screen, for Filter Name, type EventCount.
 6. Under Metric Details, for Metric Namespace, type MyNameSpace.
 7. For Metric Name, type MyAppEventCount.
 8. Choose Show advanced metric settings and confirm that Metric Value
    is 1. This specifies that the count is incremented by 1 for every
    log event.
 9. For Default Value type 0, and then choose Create Filter. Specifying
    a default value ensures that data is reported even during periods
    when no log events occur, preventing spotty metrics where data
    sometimes does not exist.

然后,您可以提取 CloudWatch Metrics 中的数据,并以您喜欢的任意间隔和统计数据绘制图表。对于您来说,以“1 天”为间隔的“总计”应该会为您生成每日 DNS 请求总数的折线图。

答案2

这里没有快速简便的解决方案。简而言之,使用计费仪表板获取历史指标。

除非您想编写一个工具来使用查询日志导出器解析和分析 CloudWatch 日志,否则计费仪表板是目前获取此类值的唯一方法,而这并不是问题所要求的直接解决方案。

相关内容