AWS Step Function中的lambda是否可以知道其当前AWS Step Function的执行ID?

aja*_*221 5 amazon-web-services python-3.x aws-lambda aws-step-functions

对于在step函数中执行的lambda,我想知道其中的AWS State Machine的当前执行ID。在步进功能中是否有办法知道这一点?

Cal*_*m M 11

老问题,但答案已过时 - 您现在可以在 step 函数中获取它 - 使用$$.Execution.id. 我正在使用的示例:

"run_task": {
  "Type": "Task",
  "Parameters": {
    "task.$": "$.task",
    "executionId.$": "$$.Execution.Id"
  },
  "Resource": "${runTaskLambdaArn}",
  "End": true
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意:这将返回 stepfunction 的 ARN + 执行名称。(`arn:name`) 被视为“id”。如果只需要执行 id 本身(即生成的 id,如果没有手动设置),那么可以使用 `$$.Execution.Name` (2认同)

小智 0

不幸的是,AWS Step Functions 尚不具备此功能。一种常见的模式是定义执行 ID(而不是使用自动生成)并将其添加到执行的输入中(从那时起,您可以在任务中使用它。

参考:https://forums.aws.amazon.com/thread.jspa?messageID =754179