如何停止AWS Lambda [Nodejs]

时间:2017-12-07 18:04:00

标签: node.js amazon-web-services aws-lambda

我在AWS Lambda中有一个函数使用运行时Node.js 6.10。 Lambda运行我的代码很好,但继续"执行"即使代码已经完成。我想要发生的是Lambda在代码完成时停止。我在下面有我的日志,看看是否有人可以看到问题所在。注意我的回调结束函数返回success

{ "errorMessage": "2017-12-07T17:50:55.618Z e4a5bb77-db76-11e7-b2e6-514284a81613 Task timed out after 120.09 seconds" }

START RequestId: e4a5bb77-db76-11e7-b2e6-514284a81613 Version: $LATEST 2017-12-07T17:48:55.527Z e4a5bb77-db76-11e7-b2e6-514284a81613 -L-llvVALjYpyUV0M6EG //gotten from code 2017-12-07T17:48:58.652Z e4a5bb77-db76-11e7-b2e6-514284a81613 http://www.loopnewsbarbados.com/content/bitcoin-worth-millions-stolen-days-us-exchange-opens-1 //gotten from code 2017-12-07T17:49:01.150Z e4a5bb77-db76-11e7-b2e6-514284a81613 crisis, //gotten from code 2017-12-07T17:49:01.232Z e4a5bb77-db76-11e7-b2e6-514284a81613 success //successful callback END RequestId: e4a5bb77-db76-11e7-b2e6-514284a81613 REPORT RequestId: e4a5bb77-db76-11e7-b2e6-514284a81613 Duration: 120093.31 ms Billed Duration: 120000 ms Memory Size: 128 MB Max Memory Used: 34 MB
2017-12-07T17:50:55.618Z e4a5bb77-db76-11e7-b2e6-514284a81613 Task timed out after 120.09 seconds

2 个答案:

答案 0 :(得分:5)

您需要在context.succeed或context.fail之后的函数中返回,以防止进一步执行。

如果在处理程序中使用回调(null,result)/(err)而不是context.succeed()/ fail(),则需要将callbackWaitsForEmptyEventLoop设置为false。

请参阅https://gist.github.com/hassy/eaea5a958067211f2fed02ead13c2678

答案 1 :(得分:0)

刚刚放

process.exit(0)

终止执行。