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

AWS EventBridge输入路径无效:是否支持JsonPath过滤表达式?

AWS EventBridge输入转换器报错原因及解决方案

问题根因

AWS EventBridge的InputPath不支持JsonPath的过滤表达式(即[?()]这类条件筛选语法),尽管测试界面可能模拟返回了正确结果,但服务端的配置校验会拦截这类语法,导致点击Update rule时提示“InputPath is invalid”。

正确配置方案

方案1:固定索引取值(适用于元素位置确定的场景)

如果attachments中type="eni"的元素位置固定(比如示例中是第二个元素,索引为1),可以直接用索引定位:

  • InputPath配置:
{
  "privateIp": "$.detail.attachments[1].details[0].value"
}
  • Template配置保持不变:
{
  "privateIp": "<privateIp>"
}

缺点:如果attachments中元素顺序发生变化,会提取错误的值。

方案2:使用VTL模板动态过滤(灵活通用)

利用EventBridge Input Transformer支持的Velocity Template Language(VTL)实现动态过滤,步骤如下:

  1. InputPath配置(传入整个attachments数组):
{
  "attachments": "$.detail.attachments"
}
  1. Template配置(通过VTL遍历筛选):
{
  "privateIp": "#foreach($attachment in $attachments)#if($attachment.type == 'eni')#foreach($detail in $attachment.details)#if($detail.name == 'privateIPv4Address')$detail.value#end#end#end"
}

该方案会自动遍历attachments数组,找到type="eni"的元素后,再从中提取name="privateIPv4Address"对应的value,无需依赖元素位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 13:01:03