如何修复不再支持 AWS Lambda nodejs8.10 错误

Posted

技术标签:

【中文标题】如何修复不再支持 AWS Lambda nodejs8.10 错误【英文标题】:How to fix the AWS Lambda nodejs8.10 is no longer supported error 【发布时间】:2020-06-18 05:14:30 【问题描述】:

当我的部署脚本运行以部署到 aws lambda 时,我收到以下错误消息。我已更新节点版本,如下面的屏幕截图所示,它确认我已将节点更改为 12.x 版本。

不确定为什么我仍然收到此错误消息? :-(

错误信息

错误:部署:eu-west-1:更新函数配置:InvalidParameterValueException:nodejs8.10的运行时参数是 不再支持创建或更新 AWS Lambda 函数。我们 建议您在创建时使用新的运行时 (nodejs12.x) 或 更新函数。

部署脚本

#!/bin/bash
yarn
# deploy
/tmp/up/up deploy staging

可能的解决方案?

我在文档中看到过这一点,但完成上述操作后,我的印象是我不需要这样做..?

aws lambda update-function-configuration --function-name --图层 arn:aws:lambda::800406105498:layer:nsolid-node-10:6 --提供运行时

此处提供文档 -> https://aws.amazon.com/blogs/developer/node-js-6-is-approaching-end-of-life-upgrade-your-aws-lambda-functions-to-the-node-js-10-lts/

【问题讨论】:

我会假设 Lambda 在您的 UpdateFunctionConfiguration 请求中看到了 nodejs8.10。您应该能够在 CloudTrail 中看到这一点,以进行确认。 deploy staging 是做什么的?听起来您的部署脚本中的某些内容将版本设置为 8.10。 第一次查看 CloudTrail 并单击“查看事件”我在 aws 中显示的模式窗口中看不到任何涉及节点 @jarmod 版本的内容? 嗨@Jack,你在使用up (apex.sh/docs/up),如果你是,你可以在你的 lambda 设置中检查运行时间吗? 加油,谢谢!将此作为答案发布! 【参考方案1】:

您是否在使用up(docs),如果可以,您可以在 lambda 设置中检查运行时并在那里更改运行时。

谢谢!

【讨论】:

以上是关于如何修复不再支持 AWS Lambda nodejs8.10 错误的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 NodeJS 在 AWS Lambda 上运行 PhantomJS

如何使用依赖项创建AWS nodejs lambda函数

使用nodejs中的AWS Lambda函数上传音频文件

从 aws-lambda 导入 pysftp 时如何修复导入错误“没有名为 '_cffi_backend' 的模块”

对于 AWS lambda 无服务器 nodejs 应用程序,您如何在开发环境中执行请求?

AWS Lambda 无法调用没有 VPC 的另一个 AWS Lambda - NodeJs