繁体   English   中英

AWS CloudWatch Event仅有时会调用Lambda

[英]AWS CloudWatch Event invoking Lambda only sometimes

我已经将CloudWatch规则配置为使用cron在给定时间运行,但是Lambda有时仅被调用。 我已经确保Lambda执行角色具有适当的权限,并且有时CloudWatch规则会正确运行,从而调用我的Lambda函数。

例如,我已经以编程方式创建了一个规则,启用了该规则,并使用Python中的boto3客户端添加了一个目标,然后当该角色执行的时间到了,它就会执行并在CloudWatch Metrics中显示“调用错误”。 我采用了同样的规则,将cron更改为2分钟后,效果很好。 我也尝试过在控制台中手动创建规则,但偶尔也获得了成功,我不知道该如何复制。

我在网上找到的唯一资源就是将CloudWatch Events权限添加到Lambda角色,但是正如我所说,我已经做到了,并且只能在哪里解决这个问题。

您应该调查该错误。

确保Lambda函数使用的IAM角色具有写入CloudWatch Logs的权限。 最简单的方法是附加名为AWSLambdaBasicExecutionRole的预定义策略。

然后,每当函数运行时,调试信息就会发送到CloudWatch Logs。 然后,您可以查看CloudWatch Logs(在函数名称下)以调查错误原因。

已解决:我向Lambda函数添加了CloudWatch Events权限,但没有给适当的别名添加权限。 因此,我向lambdaFunction添加了权限,但没有向我要调用的版本lambdaFunction:DEV添加权限。 即使规则的其余部分设置正确,我也不确定在管道设置的每个步骤中都使用了正确的别名。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM