AWS Lambda 错误:找不到从 /var/task/index.mjs 导入的包“@elastic/elasticsearch”

问题描述 投票:0回答:1

即使在尝试将elasticsearch层添加到我的lambda之后,它仍然给出相同的错误。

我遵循的命令:

  1. npm install @elastic/elasticsearch

  2. mkdir -p my-layer/nodejs/node_modules

  3. cp -r node_modules/@elastic my-layer/nodejs/node_modules

  4. zip -r my-layer.zip my-layer

  5. 创建了一个图层,然后将该图层添加到我的 lambda 中。

堆栈跟踪:

undefined   ERROR   Uncaught Exception  {"errorType":"Error","errorMessage":"Cannot find package '@elastic/elasticsearch' imported from /var/task/index.mjs","code":"ERR_MODULE_NOT_FOUND","stack":["Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@elastic/elasticsearch' imported from /var/task/index.mjs","    at new NodeError (node:internal/errors:405:5)","    at packageResolve (node:internal/modules/esm/resolve:965:9)","    at moduleResolve (node:internal/modules/esm/resolve:1022:20)","    at moduleResolveWithNodePath (node:internal/modules/esm/resolve:876:12)","    at defaultResolve (node:internal/modules/esm/resolve:1242:79)","    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:403:12)","    at ModuleLoader.resolve (node:internal/modules/esm/loader:372:25)","    at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:249:38)","    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:39)","    at link (node:internal/modules/esm/module_job:75:36)"]}
INIT_REPORT Init Duration: 196.17 ms    Phase: init Status: error   Error Type: Runtime.ExitError
2024-04-06T07:39:53.096Z    undefined   ERROR   Uncaught Exception  {"errorType":"Error","errorMessage":"Cannot find package '@elastic/elasticsearch' imported from /var/task/index.mjs","code":"ERR_MODULE_NOT_FOUND","stack":["Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@elastic/elasticsearch' imported from /var/task/index.mjs","    at new NodeError (node:internal/errors:405:5)","    at packageResolve (node:internal/modules/esm/resolve:965:9)","    at moduleResolve (node:internal/modules/esm/resolve:1022:20)","    at moduleResolveWithNodePath (node:internal/modules/esm/resolve:876:12)","    at defaultResolve (node:internal/modules/esm/resolve:1242:79)","    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:403:12)","    at ModuleLoader.resolve (node:internal/modules/esm/loader:372:25)","    at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:249:38)","    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:39)","    at link (node:internal/modules/esm/module_job:75:36)"]}
node.js amazon-web-services elasticsearch aws-lambda
1个回答
0
投票

压缩整个node_modules并导出正在工作。

要遵循的命令:

zip -r my-layer.zip node_modules
© www.soinside.com 2019 - 2024. All rights reserved.