如何为 aws_event.RuleTargetInput.from_object 函数添加输入

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

我有来自事件总线规则的事件。下面是一个没有添加输入变压器的例子。

{
    "input":{
        'version': '0',
        'id': '12345',
        'detail-type': 'abcd',
        'source': 'aws',
        'region': 'us-east-1',
        'detail': {
            'account_id': 123456,
            'customer': 'some customer'
        }
    },
 "inputDetails"{
      "truncated":False
   }

事件将被发送到状态机的 lambda 函数。我使用以下代码为状态机定义输入转换器(只需要 customer_name,而不是常量值),但我无法找到正确的方法。

targets=lambda: [aws_events_targets.SfnStateMachine(
    machine=my_state_machine.get(),
    input=aws_events.RuleTargetInput.from_object(
       {"customer": "$.input.detail.customer"}           
    ),
)],
input state-machine event-bus
1个回答
0
投票

这是我得出的结果。

targets=lambda: [aws_events_targets.SfnStateMachine(
    machine=my_state_machine.get(),
    input=aws_events.RuleTargetInput.from_object(
       {
        "customer":aws_events.EventField.from_path(
                   "$.detail.customer"
           )
       }           
    ),
)],
© www.soinside.com 2019 - 2024. All rights reserved.