使用AWS re:Post即您表示您同意 AWS re:Post 使用条款

如何添加 CloudWatch 日志组以用作 EventBridge 规则的目标?

1 分钟阅读
0

我想将 Amazon CloudWatch 日志组添加为 Amazon EventBridge 规则的目标。

解决方法

要将 CloudWatch 日志组配置为 EventBridge 规则的目标,可以使用 EventBridge 控制台。或者,可以使用 AWS 开发工具包、API、AWS Cloud Development Kit (AWS CDK) 或 AWS 命令行界面(AWS CLI)。

使用 EventBridge 控制台

完成以下步骤:

  1. 打开 EventBridge 控制台
  2. 在导航窗格中,选择规则
  3. 选择创建规则,然后输入规则的名称和可选描述。
    **注意:**也可以将日志组添加到现有规则。
  4. 对于目标类型,选择 AWS 服务
  5. 对于选择目标,选择 CloudWatch 日志组
    **注意:**要将 CloudWatch 日志组添加为目标,可以创建新的日志组或使用现有日志组。日志组必须以 /aws/events 开头。

当使用 EventBridge 控制台配置目标时,EventBridge 服务会自动更新日志组的资源策略,使该服务有权访问该日志组。

使用 AWS 开发工具包、API、AWS CDK 或 AWS CLI

**注意:**如果在运行 AWS CLI 命令时收到错误,请参阅排查 AWS CLI 错误。此外,请确保您使用的是最新版本的 AWS CLI

完成以下步骤:

  1. 要向日志组的资源策略添加所需的权限,使 EventBridge 可以访问目标日志组,请使用 PutResourcePolicy API。或者,运行 put-resource-policy AWS CLI 命令。
    具有所需权限的资源策略示例:
    {  
      "Statement": [
        {
          "Action": [
            "logs:CreateLogStream",
            "logs:PutLogEvents"
          ],
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "events.amazonaws.com",
              "delivery.logs.amazonaws.com"
            ]
          },
          "Resource": "arn:aws:logs:region:account:log-group:/aws/events/*:*",
          "Sid": "TrustEventsToStoreLogEvent"
        }
      ],
      "Version": "2012-10-17"
    }
    **注意:**当前配额为每个 AWS 账户每个 AWS 区域 10 个策略。如果超过此配额,请删除未使用的策略或合并多个策略。
  2. 使用 DescribeResourcePolicies API 或运行 describe-resource-policies AWS CLI 命令来检查策略是否已正确应用。
  3. (可选)使用 PutRule API 或运行 put-rule AWS CLI 命令来创建规则。
  4. 使用 PutTargets API 或运行 put-targets AWS CLI 命令将日志组添加到 EventBridge 规则。

相关信息

Amazon EventBridge 目标

EventBridge 控制台中可用的目标

CloudWatch Logs 权限