You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EventBridge自定义事件测试投递成功但未触发Lambda目标求助

解决EventBridge测试事件显示投递成功但Lambda未触发的问题

先查核心配置问题

  • 核对规则的事件匹配模式
    测试工具发送的事件得完全贴合规则的过滤条件,比如事件源、detail-type、detail字段的匹配规则。直接把测试用的事件JSON复制到规则的「测试事件模式」功能里验证,看能不能匹配上。
  • 确认Lambda的权限配置
    EventBridge得有调用Lambda的权限才行:
    1. 去Lambda的资源策略里检查,有没有包含EventBridge的服务主体events.amazonaws.com,并且允许lambda:InvokeFunction操作,资源填你的Lambda ARN。
      参考策略(替换成你的Lambda ARN):
    {
      "Version": "2012-10-17",
      "Id": "EventBridgeInvokeLambda",
      "Statement": [
        {
          "Sid": "Stmt123456789",
          "Effect": "Allow",
          "Principal": {
            "Service": "events.amazonaws.com"
          },
          "Action": "lambda:InvokeFunction",
          "Resource": "arn:aws:lambda:us-east-1:123456789012:function:YourLambdaFunction"
        }
      ]
    }
    
  • 确认规则绑定的事件总线
    别搞混了总线!确保规则绑定的是你测试时使用的那个总线(默认总线或者自定义总线)。

用测试工具做精准调试

  • 带追踪ID发送测试事件
    在测试事件的detail里加个唯一的trace-id,比如:
    {
      "source": "your.custom.source",
      "detail-type": "your.detail.type",
      "detail": {
        "trace-id": "test-20240520-001"
      },
      "region": "us-east-1"
    }
    
    发送后去EventBridge的「事件历史」里搜索这个trace-id,查看事件流转状态:
    • 若显示「已匹配规则但投递失败」,直接查看失败原因(比如权限不足、Lambda不存在)
    • 若显示「未匹配规则」,说明规则的过滤模式有误
  • 检查Lambda的CloudWatch日志
    直接去CloudWatch Logs里找到Lambda的日志组,搜索刚才的trace-id:
    • 没找到任何日志?说明EventBridge根本没触发Lambda
    • 有错误日志?照着提示修复即可(比如Lambda执行报错导致重试失败)

其他常见坑

  • Lambda的并发/触发限制
    检查Lambda是否设置了并发上限,或者EventBridge规则里是否添加了触发速率限制,要是有这类限制,可能事件被节流了。
  • 测试事件格式错误
    确保测试事件的JSON格式合法,字段名要加引号、逗号不要遗漏。EventBridge测试工具会自动修正部分格式,但复杂嵌套的detail字段容易出问题,仔细检查。

内容的提问来源于stack exchange,提问作者Mark P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 05:10:30