为什么 aws Step Function 说它调用了我的 lambda fn,但没有该 lambda 的日志组?

Why does aws Step Func say it called my lambda fn, but there is no log group for that lambda?

我有一个调用 lambda 函数的状态机。当我执行状态机时,它说执行成功。当我单击 Lambda 步骤时,我可以看到它应该调用的 lambda 的 ARN,我可以看到输入,我可以看到输出(空)。该输出不是预期的。当我按照 link 进入该功能的 CloudWatch 日志组时,最近几个小时没有日志组。这表明当前甚至正在调用 lambda。

基本工作流程如下:

这是 Lambda 状态的配置:

这是状态机的执行:

同样,输出是 null 并且此 lambda 的 cloudWatch 日志组不包含最近的日志记录。

我确实不得不重新部署 lambda 来修复管道问题。它在那个变化之前工作。为了解决这个问题,我删除了状态机的内容并从头开始重新创建它。

我错过了什么?

谢谢

如果您确信 Lambda 函数确实执行了但没有写入 CloudWatch 日志,那么这可能是由于缺少日志记录权限造成的。

典型的 Lambda 函数的 IAM 角色有权写入 CloudWatch Logs。这是一个 example of such a policy. Alternatively, you can use one of the AWS managed policies for Lambda,例如 AWSLambdaBasicExecutionRole。