【问题标题】:troubleshoot failed cloudwatch events对失败的 cloudwatch 事件进行故障排除
【发布时间】:2021-02-02 23:05:43
【问题描述】:

这部分 cloudformation 模板创建事件,但不实际执行。

  MyCWEventRule:
    Type: AWS::Events::Rule
    Properties: 
      Name: my-batch-event-rule
      ScheduleExpression: cron(01 07 ? * * *)
      State: ENABLED
      Targets: 
        - Id: my-batch-job
          Arn: !Ref Queue
          BatchParameters: 
            JobDefinition: !Ref StartJob
            JobName: tds-job
          RoleArn: !Join [ "", [!Sub "arn:aws:iam::${AWS::AccountId}:role/service-role/", !Ref ruleIAMRole]]

没有日志可以检查问题所在。如果我使用控制台自己提交作业,它会按预期工作。 cron 中提到的作业定义参数是正确的,如图所示...

如何对失败的 cloudwatch 事件进行故障排除?


更新:

当我单击“编辑”并使用“为该特定资源创建新角色”时,它会起作用。 说明线路有问题...

RoleArn: !Join [ "", [!Sub "arn:aws:iam::${AWS::AccountId}:role/service-role/", !Ref 规则IAMRole]]

【问题讨论】:

  • 我可以在图片中看到“监控:显示规则的指标”链接。如果我点击它,我会被告知该作业已被调用并失败。但是没有任何细节我怎么知道原因呢?

标签: amazon-cloudformation amazon-cloudwatch aws-batch


【解决方案1】:

你猜对了! ARN 角色路径中不需要“服务角色”。它应该看起来像这样......

RoleArn: !Join [ "", [!Sub "arn:aws:iam::${AWS::AccountId}:role/", !Ref ruleIAMRole]]

甚至更好:

RoleArn: !GetAtt ruleIAMRole.Arn

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-30
    • 2021-07-02
    • 2021-01-10
    • 2023-03-08
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多