在使用 SAM CLI、AWS CDK 和 Lambda 层构建 Lambda 函数时,我找不到有关如何在本地调试函数的示例或好的文档。
当使用 CDK 构建 RestApi 和简单的 Lambda 函数,然后尝试使用 VSCode 使用如下启动配置在本地进行调试时:
{
"type": "aws-sam",
"request": "direct-invoke",
"name": "hello:app.handler (nodejs12.x)",
"invokeTarget": {
"target": "code",
"projectRoot": "${workspaceFolder}/infrastructure/handlers/hello",
"lambdaHandler": "app.handler"
},
"lambda": {
"runtime": "nodejs12.x",
"payload": {},
"environmentVariables": {}
}
}
从任何层引用模块的导入语句会抛出一个错误,例如:
{"errorType":"Runtime.ImportModuleError","errorMessage":"Error: Cannot find module '/opt/nodejs/utils'"
重现步骤: