创建 Contributor Insights 规则 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

创建 Contributor Insights 规则

您可创建规则以分析日志数据。可以评估任何采用 JSON 或常用日志格式 (CLF) 的日志。这包括遵循这些格式之一的自定义日志以及来自 Amazon 服务的日志,例如 Amazon VPC 流日志、Amazon Route 53 DNS 查询日志、Amazon ECS 容器日志以及来自 Amazon CloudTrail、Amazon SageMaker、Amazon RDS、Amazon AppSync 和 API Gateway 的日志。

在规则中指定字段名称或值时,所有匹配都区分大小写。

在创建规则时,您可以使用内置示例规则,也可以从 Scratch 创建自己的规则。Contributor Insights 包括以下日志类型的示例规则:

  • Amazon API Gateway 日志

  • Amazon Route 53 公有 DNS 查询日志

  • Amazon Route 53 resolver 查询日志

  • CloudWatch Container Insights 日志

  • VPC 流日志

如果您登录的账户在 CloudWatch 跨账户可观测性中设置为监控账户,则除了为该监控账户中的日志组创建规则外,您可以为与该监控账户关联的源账户中的日志组创建 Contributor Insights 规则。您还可以设置单个规则来监控不同账户中的日志组。有关更多信息,请参阅 CloudWatch 跨账户可观测性

重要

当您向用户授予 cloudwatch:PutInsightRule 权限时,默认情况下,该用户可以创建一个规则来评估 CloudWatch Logs 中的任何日志组。您可以添加 IAM policy 条件,以限制用户的这些权限,使其包含和排除特定的日志组。有关更多信息,请参阅 使用条件键限制 Contributor Insights 用户对日志组的访问

要使用内置示例规则创建规则,请执行以下操作:
  1. 通过 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,依次选择 InsightsContributor Insights

  3. 选择创建规则

  4. 对于 Select log group(s)(选择日志组),请选择您希望您的规则监控的日志组。您可以选择多达 20 个日志组。如果您登录的账户是为 CloudWatch 跨账户可观测性设置的监控账户,则可以选择源账户中的日志组,也可以设置单个规则来分析不同账户中的日志组。

    1. (可选)要选择名称以特定字符串开头的所有日志组,请选择 Select by prefix match(按前缀匹配选择)下拉菜单,然后输入前缀。如果这是监控账户,则可以选择要在其中进行搜索的账户,否则将选择所有账户。

    注意

    您需要为与您的规则匹配的每个日志事件支付费用。如果您选择 Select by prefix match(按前缀匹配选择)下拉菜单,请注意前缀可以匹配多少个日志组。如果您搜索了超出预期数量的日志组,可能会产生意外费用。有关更多信息,请参阅 Amazon CloudWatch 定价

  5. 对于 Rule type(规则类型),选择 Sample rule(示例规则)。然后选择 Select sample rule(选择示例规则),并选择相应的规则。

  6. 示例规则已填写 Log format(日志格式)、Contribution(贡献)、Filters(筛选条件)和 Aggregate on(聚合)字段。您可以根据需要对这些值进行调整。

  7. 选择下一步

  8. Rule name (规则名称) 输入一个名称。有效字符包括 A-Z、a-z、0-9、(连字符)、(下划线)和(半角句点)。

  9. 选择是创建处于已禁用状态还是已启用状态的规则。如果您选择启用规则,它将立即开始对您的数据进行分析。运行启用的规则时,您需要支付费用。有关更多信息,请参阅 Amazon CloudWatch 定价

    Contributor Insights 仅在创建规则后分析新的日志事件。规则无法处理之前已由 CloudWatch Logs 处理的日志事件。

  10. (可选)对于 Tags(标签),请添加一个或多个键/值对作为此规则的标签。标签可帮助您识别和组织 Amazon 资源并跟踪 Amazon 成本。有关更多信息,请参阅 标记 Amazon CloudWatch 资源

  11. 选择创建

要从 Scratch 创建规则,请执行以下操作:
  1. 通过 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Contributor Insights

  3. 选择创建规则

  4. 对于 Select log group(s)(选择日志组),请选择您希望您的规则监控的日志组。您可以选择多达 20 个日志组。如果您登录的账户是为 CloudWatch 跨账户可观测性设置的监控账户,则可以选择源账户中的日志组,也可以设置单个规则来分析不同账户中的日志组。

    1. (可选)要选择名称以特定字符串开头的所有日志组,请选择 Select by prefix match(按前缀匹配选择)下拉菜单,然后输入前缀。

    注意

    您需要为与您的规则匹配的每个日志事件支付费用。如果您选择 Select by prefix match(按前缀匹配选择)下拉菜单,请注意前缀可以匹配多少个日志组。如果您搜索了超出预期数量的日志组,可能会产生意外费用。有关更多信息,请参阅 Amazon CloudWatch 定价

  5. 对于 Rule type(规则类型),请选择 Custom rule(自定义规则)。

  6. 对于 Log format (日志格式),请选择 JSONCLF

  7. 您可以通过以下方式完成规则的创建过程:使用向导,或选择 Syntax (语法) 选项卡并手动指定规则语法。

    要继续使用此向导,请执行以下操作:

    1. 对于 Contribution (贡献)Key (键),请输入要报告的贡献者类型。此报告将显示该贡献者类型的前 N 个值。

      有效条目为任何具有值的日志字段。示例包括 requestIdsourceIPaddresscontainerID

      有关查找特定日志组中日志的日志字段名称的信息,请参阅查找日志字段

      大于 1 KB 的键将被截断至 1KB。

    2. (可选)选择 Add new key(添加新键)以添加更多键。可以在规则中包含最多四个键。如果输入多个键,则报告中的贡献者将由键的唯一值组合定义。例如,如果您指定三个键,则三个键的每个唯一值组合将被计为一个独特贡献者。

    3. (可选)如果要添加筛选条件以缩小结果范围,请选择 Add filter(添加筛选条件)。对于 Match(匹配),输入要作为筛选条件的日志字段的名称。对于 Condition(条件),选择比较运算符,并输入要作为筛选条件的值。

      您可以在规则中最多添加 4 个筛选条件。多个筛选条件通过 AND 逻辑联接,因此,仅返回与所有筛选条件都匹配的日志事件。

      注意

      遵循比较运算符的数组(例如 InNotIn 或者 StartsWith)可以包含最多 10 个字符串值。有关 Contributor Insights 规则语法的更多信息,请参阅 Contributor Insights 规则语法

    4. 对于 Aggregate on(聚合),选择 Count(计数)Sum(总计)。选择 Count(计数)会使贡献者排名基于出现次数。选择 Sum(总计)会使排名基于您为 Contribution(贡献)Value(值)指定的字段值的总和。

  8. 要输入规则作为 JSON 对象而不是使用此向导,请执行以下操作:

    1. 选择 Syntax (语法) 选项卡。

    2. Rule body (规则正文) 中,输入规则的 JSON 对象。有关规则语法的信息,请参阅 Contributor Insights 规则语法

  9. 选择下一步

  10. Rule name (规则名称) 输入一个名称。有效字符为 A-Z、a-z、0-9、“-”、“_”和“.”。

  11. 选择是创建处于已禁用状态还是已启用状态的规则。如果您选择启用规则,它将立即开始对您的数据进行分析。运行启用的规则时,您需要支付费用。有关更多信息,请参阅 Amazon CloudWatch 定价

    Contributor Insights 仅在创建规则后分析新的日志事件。规则无法处理之前已由 CloudWatch Logs 处理的日志事件。

  12. (可选)对于 Tags(标签),请添加一个或多个键/值对作为此规则的标签。标签可帮助您识别和组织 Amazon 资源并跟踪 Amazon 成本。有关更多信息,请参阅 标记 Amazon CloudWatch 资源

  13. 选择下一步

  14. 确认您输入的设置,然后选择 Create rule(创建规则)。

可以禁用、启用或删除已创建的规则。

在 Contributor Insights 中启用、禁用或删除规则
  1. 通过 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Contributor Insights

  3. 在规则列表中,选中单个规则旁边的复选框。

    内置规则由 Amazon 服务创建,无法编辑、禁用或删除这些规则。

  4. 选择 Actions (操作),然后选择所需选项。

查找日志字段

创建规则时,您需要知道日志组的日志条目中的字段名称。

查找日志组中的日志字段
  1. 通过 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中的 Logs (日志) 下,选择 Insights (见解)

  3. 在查询编辑器上方,选择要查询的一个或多个日志组。

    当您选择日志组时,CloudWatch Logs Insights 会自动检测日志组数据中的字段,并将其显示在右侧窗格中的 Discovered fields(发现的字段)中。