SSM 文档的 Eventbridge 模式

问题描述 投票:0回答:1

我想确保我的 lambda 仅在特定 ssm 文档状态为“成功”时触发,因此我编写了以下 eventbridge 模式,但它不起作用。

我想确保我的 lambda 仅在特定 ssm 文档状态为“成功”时触发,因此我编写了以下 eventbridge 模式,但它不起作用。

"source": ["aws.ssm"],
"detail-type": ["EC2 Command Status-change Notification"],
"detail": {
    "documentName": ["MyDocument"],
    "status": ["Success"]

但是当我删除文档名称时,它会正确触发我的 lambda,我想知道我们如何才能确保只有当这个特定文档成功时,它才必须触发我的 lambda。

amazon-web-services aws-event-bridge
1个回答
0
投票

文档名称键似乎有拼写错误。

它必须是“文档名称”而不是“文档名称”。

您可以尝试以下操作吗:

{
 "source": ["aws.ssm"],
 "detail-type": ["EC2 Command Status-change Notification"],
 "detail": {
           "document-name": ["MyDocument"],
           "status": ["Success"]
           }
}

取自 AWS EventBridge 的事件示例:

{
"version": "0",
"id": "51c0891d-0e34-45b1-83d6-95db273d1602",
"detail-type": "EC2 Command Status-change Notification",
"source": "aws.ssm",
"account": "123456789012",
"time": "2016-07-10T21:51:32Z",
"region": "us-east-1",
"resources": ["arn:aws:ec2:us-east-1:123456789012:instance/i-abcd1111",
"arn:aws:ec2:us-east-1:123456789012:instance/i-abcd2222"],
  "detail": {
    "command-id": "e8d3c0e4-71f7-4491-898f-c9b35bee5f3b",
    "document-name": "AWS-RunPowerShellScript", // Key name to fix in your pattern
    "expire-after": "2016-07-14T22:01:30.049Z",
    "parameters": {
      "executionTimeout": ["3600"],
      "commands": ["date"]
    },
    "requested-date-time": "2016-07-10T21:51:30.049Z",
    "status": "Success"
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.