跳至内容

如何对 EventBridge 调度器中的错误进行故障排除?

1 分钟阅读
0

我想对 Amazon EventBridge 调度器中的错误进行故障排除。

解决方法

监控 EventBridge 调度器指标

使用 Amazon CloudWatch 监控 EventBridge 调度器指标。例如,您可以查看指标,如 TargetErrorCount、InvocationDroppedCount 和 TargetErrorThrottledCount。

配置 DLQ

要在调度无法调用其目标时获得包含调用详细信息的有效载荷,请配置死信队列 (DLQ)。

检查 EventBridge 调度器是否具有所需的权限

验证您的 AWS Identity and Access Management (IAM) 执行角色是否允许 EventBridge 调度器代入该角色。您附加到角色的策略还必须具有调用目标的权限。

验证信任关系

要验证 EventBridge 调度器是否可以代入该角色,请完成以下步骤:

  1. 打开 EventBridge 控制台。
  2. 选择 Schedules(调度),然后选择您的调度。
  3. 选择 Target(目标)选项卡。
  4. 选择执行角色。
  5. 选择 Trust relationships(信任关系)。
  6. 验证 Principal(主体)是否设置为 scheduler.amazonaws.com。
  7. 验证 Action(操作)是否设置为 sts:AssumeRole。

注意: 最佳做法是使用执行角色信任策略,这有助于防止混淆代理问题。

验证目标权限

要检查 EventBridge 调度器是否可以调用目标,请确定您希望 EventBridge 调度器调用的 AWS 服务的 API 操作。然后,验证附加到您的执行角色的 IAM 策略是否包含调用该服务 API 操作的权限。

例如,要让 EventBridge 调度器调用 AWS Lambda 函数,您必须在 IAM 策略中包含 lambda:InvokeFunction 权限:

{
    "Version":"2012-10-17",
    "Statement": [
        {
            "Action": [ "lambda:InvokeFunction" ],
            "Effect": "Allow",
            "Resource": "*"
        }
     ]
}

注意: 最佳做法是使用特定的 Amazon 资源名称 (ARN) 而不是通配符 (*)。

AWS 官方已更新 9 个月前