问题标签 [aws-lambda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
20214 浏览

node.js - 在 AWS Lambda 中重试

我正在编写一个与端点通信的 Lambda 函数。如果发生 500 错误,我希望该函数重试几次。

exports.handler我希望在我的函数中做这样的事情:

我想知道如何正确处理context变量。

在我上面引用的代码之后,我应该context.fail()吗?还是我应该等待context.succeed()context.fail()在此重试过程的后续迭代中发生?

我只是很难决定是否每个都context需要在exports.handler它出现的原始级别上解决,或者是否context可以解决任何级别,并且将在整个 Lambda 执行中解决它。

感谢您的任何建议。

0 投票
4 回答
4186 浏览

node.js - 使用 node-gyp 交叉编译具有本机绑定的节点模块

我正在使用 AWS Lambda,这涉及创建我的 node.js 脚本的存档,包括node_modules文件夹并将其上传到他们的基础设施以运行。

这很好用,除非涉及具有本机绑定的节点模块(使用 node-gyp)。因为绑定是在我的本地计算机 (OS X) 上编译和存档的,所以它与 AWS 的 (Amazon Linux) 服务器不兼容。

如何交叉编译/安装节点模块(特别是node-sqlite3),以便当我将其上传到另一个服务器架构时它运行?

0 投票
1 回答
9949 浏览

php - 使用 AWS PHP 开发工具包将“有效负载”传递给 AWS Lambda 函数

我正在尝试使用 aws php sdk 来调用 aws-lambda 函数并获取返回值,如下所示:

出于某种原因,我在第 21 行的 StatusCodeVisitor.php 中遇到了 ErrorException。“非法字符串偏移 'StatusCode'”

当我不包括

然后我没有收到错误,但我也没有将任何数据传递到我的 lambda 函数中,这违背了目的。

谁能看到我做错了什么?这似乎是一个微不足道的例子。

编辑 - 添加此功能的文档链接

http://docs.aws.amazon.com/aws-sdk-php/v2/api/class-Aws.Lambda.LambdaClient.html#_invoke

0 投票
1 回答
8495 浏览

node.js - AWS Lambda copyObject“进程在完成请求之前退出”

我正在尝试复制上传到 S3 存储桶的文件以创建带时间戳的备份。(“实时”文件将定期覆盖以维护永久链接)

但是,AWScopyObject 似乎没有执行。我收到以下错误

导致此错误的代码如下;

什么可能导致 lambda 在 AWSCopyObject 回调之前退出?根据https://aws.amazon.com/blogs/compute/container-reuse-in-lambda/这个错误表明 context.done() 永远不会被击中。

0 投票
3 回答
4271 浏览

amazon-web-services - 仅在处理了同一主题的 SQS 订阅后才调用 AWS Lambda SNS 事件

我想实现一个 Amazon SNS 主题,它首先将消息传递到作为主题订阅者的 SQS 队列,然后执行也是同一主题订阅者的 AWS Lambda 函数。然后,Lambda 函数可以从 SQS 队列中读取消息并并行处理其中的几个(数百个)。

我的问题是,是否有任何方法可以保证发送到 SNS 主题的消息首先被传递到 SQS 队列,然后才传递到 Lambda 函数?

这样做的目的是扩展到大量消息,而不必为每条消息单独执行 Lambda 函数。

0 投票
1 回答
1045 浏览

node.js - 从命令行和lambda运行带有exports.object的节点应用程序

我还在学习中node,遇到过这个问题。在下面的情况下,并使用一个愚蠢的例子(完整的代码不能放在这里),当我在终端中运行时node index.js somethinghere,代码没有执行。我意识到这一点,event并且context在这个例子中没有任何影响,但它们在我目前正在编写的代码中确实如此。

这是因为我在做什么exports.imageRs吗?

我如何通过传入参数让它在命令行上运行?

请注意,原始代码将同时aws lambda在命令行上运行。

文件index.js

0 投票
1 回答
2975 浏览

node.js - 在 Amazon Lambda 示例中使用异步?

我正在查看 Amazon Lambda 用于在 S3 存储桶中调整图像大小的示例代码。 示例代码(为清楚起见截断):

...表明他们正在使用异步瀑布。但是,这些有序步骤中的每一个似乎都依赖于前一个函数的结果。所以本质上,这是一个顺序操作。

在这里使用异步瀑布有什么好处?这与亚马逊的 Lambda 执行引擎有关,还是只是节点中的一个明智的设计决策?

0 投票
0 回答
623 浏览

aws-lambda - AWS Lambda - 找不到模块

我的 zip 文件包含: mylambda.js node_modules

mylambda 需要 mycommon。

在 node_modules 中有一个名为“mycommon”的模块。

在 node_modules/mycommon 里面有一个“node_modules”,里面有“bunyan”。(它是 mycommon 模块的依赖项。)

node_modules/mycommon/src/logging.js 需要它。

无论我做什么,即使我将 bunyan 放在顶级 node_modules 中,我总是会从 node_modules/mycommon/src/logging.js 收到错误“找不到模块“bunyan””。

处理此问题的推荐方法是什么?有没有一个 lambda bundler 可以帮我解决这个问题?(比如浏览器化。)

非常感谢。

0 投票
1 回答
592 浏览

amazon-web-services - twilio Lambda backend aws

Is it possible to use Lambda as a backend for Twilio?

I can call Twilio fro Lambda, but I need to get information from the caller, such as "press 1". I could make a server, but can I invoke Lambda functions? (I know we can't invoke Lambda).

Here's an example of what I'd like to do.

0 投票
1 回答
2868 浏览

amazon-web-services - 查看 lambda 函数的 console.log

有谁知道console.log's在运行 awslambda函数时如何到达?

当我在其测试环境中运行该功能时很好,但我想在生产环境中运行它时查看日志。