簡體   English   中英

是什么導致了 AWS Lambda 上的這個 Runtime.ExitError?

[英]What is causing this Runtime.ExitError on AWS Lambda?

我正在嘗試在 Lambda 上測試 function,但是當我測試它時,我得到一個Runtime.ExitError

會是什么原因呢?

{"errorType": "Runtime.ExitError", "errorMessage": "RequestId:
 0dfeb7be-012d-43b7-8674-665bfd8b2bc2 Error: Runtime exited with error: exit status 7" }

問/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)"],"message":"無法創建表(膳食):用戶:arn:aws:sts::929545228810:assumed -role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 無權執行:dynamodb:CreateTable 資源: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 資源:arn:aws:dynamodb:us-east-2:929545228810:table/Meals AskSdk.DynamoDbPersistenceAdapter 錯誤:無法創建表(膳食):用戶:arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 無權執行:dynamodb:CreateTable 資源:arn:aws:dynamodb:us- east-2:929545228810:餐桌/餐點 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) 在請求.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 at 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) 在請求.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) 結束 RequestId:e3d534bb-abd8-4b49-a628-2ec5c6193ec1 REPORT RequestId:e3d534bb-abd8-4b49-a628-2ec5c6193ec1 持續時間:1013.44 毫秒計費持續時間:1100 毫秒 Memory 大小:128 MB 最大 Memory 使用:97 MB 初始持續時間:513.63 毫秒 RequestId:e3d534bb-abd8-4b49-a628-2ec5c6193ec1 錯誤:運行時退出,錯誤:退出狀態 7 Runtime.ExitError

“假設這是一個 NodeJS lambda,退出代碼 7 是內部異常處理程序運行時失敗。換句話說,您有一個未捕獲的異常。請查看您的 cloudwatch 日志以獲取更多詳細信息。” ——匿名懦夫

用 try-catch 將代碼包裝在 exports.handler 中解決了我的問題

我在研究中發現了這個頁面,並認為我會發布我的問題/解決方案。 沒有得到確切的退出代碼 7,但具體來說:

Error: Runtime exited with error: signal: killed Runtime.ExitError

沒有其他錯誤、日志等。上一行給出了解決方案:

Memory Size: 1024 MB Max Memory Used: 1024 MB

在我的 Lambda function 執行中用完了 memory。 提高最大 memory,問題得到解決。 Memory 是檢查您是否看到 Runtime.ExitError 的好方法。

看起來像我的權限:

無法創建表(膳食):用戶: arn:aws:sts::929545228810:assumed-role/homeAssistTemp-role-rz5qgsmq/homeAssistTemp 無權執行: dynamodb:CreateTable資源:arn:aws:dynamodb:us- east-2:929545228810:餐桌/餐點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM