【发布时间】:2020-01-27 00:59:00
【问题描述】:
我正在尝试在 Lambda 上测试一个函数,但是当我测试它时,我得到一个 Runtime.ExitError:
会是什么原因?
{"errorType": "Runtime.ExitError", "errorMessage": "RequestId:
0dfeb7be-012d-43b7-8674-665bfd8b2bc2 Error: Runtime exited with error: exit status 7" }
ask/node_modules/aws-sdk/lib/request.js:364:18)"," 在 Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:106:20)"," 在 Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:78:10)","
在 Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14)"," 在 请求.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)"," 在 AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)"," 在 /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10"," 在 要求。 (/var/task/node_modules/aws-sdk/lib/request.js:38:9)"],"message":"可以 不创建表(膳食):用户: arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 无权执行:dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-2:929545228810:table/Meals","time":"2019-09-26T18:02:51.854Z"} 2019-09-26T18:02:51.931Z e3d534bb-abd8-4b49-a628-2ec5c6193ec1 信息未捕获 异常:AskSdk.DynamoDbPersistenceAdapter 错误:无法创建 表(膳食): 用户: arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 无权执行:dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-2:929545228810:table/Meals AskSdk.DynamoDbPersistenceAdapter 错误:无法创建表 (用餐): 用户: arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 无权执行:dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-2:929545228810:table/Meals 在 Object.createAskSdkError (/var/task/node_modules/ask-sdk-runtime/dist/util/AskSdkUtils.js:22:17) 在响应。 (/var/task/node_modules/ask-sdk-dynamodb-persistence-adapter/dist/attributes/persistence/DynamoDbPersistenceAdapter.js:88:42) 在请求。 (/var/task/node_modules/aws-sdk/lib/request.js:364:18) 在 Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:106:20) 在 Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:78:10) 在 Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14) 在 Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10) 在 AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12) 在 /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10 在请求。 (/var/task/node_modules/aws-sdk/lib/request.js:38:9) /var/task/node_modules/ask-sdk-v1adapter/dist/adapter.js:275 抛出错误; ^AskSdk.DynamoDbPersistenceAdapter 错误:无法创建表 (用餐): 用户: arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 无权执行:dynamodb:CreateTable on resource: arn:aws:dynamodb:us-east-2:929545228810:table/Meals 在 Object.createAskSdkError (/var/task/node_modules/ask-sdk-runtime/dist/util/AskSdkUtils.js:22:17) 在响应。 (/var/task/node_modules/ask-sdk-dynamodb-persistence-adapter/dist/attributes/persistence/DynamoDbPersistenceAdapter.js:88:42) 在请求。 (/var/task/node_modules/aws-sdk/lib/request.js:364:18) 在 Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:106:20) 在 Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:78:10) 在 Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14) 在 Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10) 在 AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12) 在 /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10 在请求。 (/var/task/node_modules/aws-sdk/lib/request.js:38:9) END RequestId: e3d534bb-abd8-4b49-a628-2ec5c6193ec1 报告请求 ID: e3d534bb-abd8-4b49-a628-2ec5c6193ec1 持续时间:1013.44 毫秒 持续时间:1100 毫秒内存大小:128 MB 使用的最大内存:97 MB 初始化 持续时间:513.63 毫秒请求 ID:e3d534bb-abd8-4b49-a628-2ec5c6193ec1 错误:运行时退出并出现错误:退出状态 7 Runtime.ExitError
【问题讨论】:
-
你能验证你的函数没有超过超时值和分配的内存吗?
-
CloudWatch 日志说什么?
-
假设这是一个 NodeJS lambda,退出代码 7 是
Internal Exception Handler Run-Time Failure。换句话说,您有一个未捕获的异常。查看您的 cloudwatch 日志以了解更多详细信息。 -
我已经添加了日志。也许有一个明显的错误
-
try, catch 解决了这个问题。谢谢匿名
标签: amazon-web-services function aws-lambda