当前位置: 首页 > 知识库问答 >
问题:

动态数据库触发器 Lambda 函数问题: 函数调用失败

秋建义
2023-03-14

我在动态数据库表上启用了流。修改项目时,将触发 lambda 函数。我认为我在 lambda 触发器端、权限端和 dynamodb 端都正确设置了所有内容。我还使用测试数据运行了我的lambda函数,它成功了。但是,当表中的项被修改时,触发器没有启动我的 lambda 函数。相反,我得到了以下错误:

批量:100最后处理结果:问题:函数调用失败

你知道调试这个的最佳方法是什么吗?我查看了CloudWatch日志,但没有与触发器/流关联的日志。

谢了。

编辑:lambda 函数(不是其动态触发器)的日志。触发器未生成任何日志语句。

开始请求id:3a 08 eedc-f0de-11e 8-9008-033 b48 D2 CB 67版本:$最新 18:16:28结束请求id:3a 08 eedc-f0de-11e 8-9008-033 b48 D2 CB 6718:16:28报告请求id:3a 08 eedc-f0de-11e 8-9008-033 b48 D2 CB 67持续时间:81.85毫秒计费持续时间:11

共有3个答案

阚小云
2023-03-14

在我的情况下,问题来自流批处理大小 100。在 lambda 代码中,我正在检查事件,如果事件不符合要求,我将退出。

慕健
2023-03-14

在我的例子中,我的lambda角色没有写入SNS的权限,并且lambda代码正在写入SNS。因此,我向lambda角色添加了一个策略,赋予它写入任何SNS主题的权限。

贺景胜
2023-03-14

我今天碰到了这个问题。

  1. 我通过使用lambda主页面顶部的Test按钮手动触发lambda来调试它。它显示了尝试运行我的lambda的错误输出。
  2. 我出错的原因是handler参数,因为我有一个非标准的javascript函数名称,我忘记在lambda中配置它了。
 类似资料:
  • 实时数据库触发器在写入创建时是排队还是线程化?

  • 我正在使用AWS Lambda函数(用python编写)在对象上传到预设S3 bucket时发送电子邮件。该对象通过AWS PHP SDK上传到S3 bucket中,并使用多部分上传。每当我测试我的代码(在Lambda代码编辑器页面中)时,它似乎工作得很好,我只收到一封电子邮件。 但是当对象通过PHPSDK上传时,Lambda函数运行两次并发送两封电子邮件,两者都具有不同的消息ID。我尝试了不同的

  • 有没有人知道某种方法可以触发具有 Blob 触发器的 Azure 函数?无论是通过API还是使用“测试/运行”功能。 情况是,我需要在测试目的中这样做。目前我看到的是,可以在blob存储中提供要触发的文件的名称。但这是无用的,因为无论如何,将文件放在那里都会触发功能。我想做的是为文件的内容而不是名称提供功能,以避免不必要的操作。 不幸的是,微软在所有相关主题上的留档很差,但这个没有。在这个gith

  • 我可以从AWS SDK创建lambda函数: 但是我如何指定这个函数应该在S3上传时触发呢?

  • 问题内容: 我有一个字符串数组,其中包含类中方法的名称 在课堂上,我正在创建一个实例(例如)。现在,我可以调用,只是我想循环读取String数组。这可能吗? 问题答案: 您可以使用反射。通过调用完成 您必须处理大量异常,并且您的方法必须为。需要注意的是Java编码惯例喜欢到。 但是,使用反射应该是最后的选择。您应该使用更多的面向对象技术。 如果您经常需要类似的功能,也许您可​​以看看在Java平台

  • 调用回调函数,并把一个数组参数作为回调函数的参数。 local args = {...} or {} method_name(unpack(args, 1, table.maxn(args))) 使用场景 如果你的实参 table 中确定没有 nil 空洞,则可以简化为 method_name(unpack(args)) 你要调用的函数参数是未知的; 函数的实际参数的类型和数目也都是未知的。 伪代