有什么方法可以知道步骤函数是否调用了 Lambda?
Is there any way to know if a Lambda was invoked by a step function?
lambda 函数有什么方法可以知道它是否在步骤函数中被调用?无需开发人员在 step 函数内逐步传递参数。我检查了上下文,它没有提供这样的信息。
我想 aws 会为传递给 lambda 函数的步骤函数提供某种唯一标识符。
没有默认方法可以这样做。在调用 Lambda 函数时,Step Functions 本身不会传递任何事件详细信息。
如您所述,您可以通过 InputPath
、ResultPath
和 OutputPath
逐步传递输入。或者,您可以在状态机中声明 Parameters
:
{
"StartAt": "HelloWorld",
"States": {
"Echo": {
"Type": "Task",
"Resource": "arn:aws:lambda:us-east-1:1234567890:function:echo",
"Parameters": {"invocation_type": "StepFunction"},
"End": true
}
}
}
以上函数将通过 {"invocation_type": "StepFunction"}
事件调用。
lambda 函数有什么方法可以知道它是否在步骤函数中被调用?无需开发人员在 step 函数内逐步传递参数。我检查了上下文,它没有提供这样的信息。
我想 aws 会为传递给 lambda 函数的步骤函数提供某种唯一标识符。
没有默认方法可以这样做。在调用 Lambda 函数时,Step Functions 本身不会传递任何事件详细信息。
如您所述,您可以通过 InputPath
、ResultPath
和 OutputPath
逐步传递输入。或者,您可以在状态机中声明 Parameters
:
{
"StartAt": "HelloWorld",
"States": {
"Echo": {
"Type": "Task",
"Resource": "arn:aws:lambda:us-east-1:1234567890:function:echo",
"Parameters": {"invocation_type": "StepFunction"},
"End": true
}
}
}
以上函数将通过 {"invocation_type": "StepFunction"}
事件调用。