本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Lambda 函數錯誤訊息
於下列清單中,您可找到有關錯誤訊息的資訊,及可能的原因和解決方案。
-
VPC組態問題
VPC設定問題可能會在嘗試連線時引發下列錯誤訊息:
ERROR: invoke API failed DETAIL: AWS Lambda client returned 'Unable to connect to endpoint'. CONTEXT: SQL function "invoke" statement 1
此錯誤的常見原因是設定不正確的VPC安全性群組。請確定您在VPC安全群組的連接埠 443 上有TCP開啟的輸出規則,以便您VPC可以連線至 Lambda VPC。
如果您的資料庫執行個體是私DNS有的,請檢查VPC. 確保將
rds.custom_dns_resolution
參數設置為 1 並進行設置 AWS PrivateLink 如中所述步驟 1:RDS為輸出連線設定適用於 Postgre SQL 資料庫執行個體的 Aurora Postgre SQL 資料庫AWS Lambda。如需詳細資訊,請參閱介面VPC端點 (AWS PrivateLink). 缺乏叫用 Lambda 函式所需的許可權限
若您看到下列其中一個錯誤訊息,則叫用該函數的使用者 (角色) 並無適當的許可權限。
ERROR: permission denied for schema aws_lambda
ERROR: permission denied for function invoke
使用者 (角色) 必須取得特定授權才可叫用 Lambda 函數 如需詳細資訊,請參閱步驟 6:授予其他使用者呼叫 Lambda 函數的許可權限。
不正確處理 Lambda 函數中的錯誤
如果 Lambda 函數在要求處理期間擲回例外狀況,則會
aws_lambda.invoke
失敗並出現 Postgre SQL 錯誤,如下所示。SELECT * FROM aws_lambda.invoke('aws_lambda_arn_1', '{"body": "Hello from Postgres!"}'::json);
ERROR: lambda invocation failed DETAIL: "arn:aws:lambda:us-west-2:555555555555:function:my-function" returned error "Unhandled", details: "<Error details string>".
請務必處理 Lambda 函數或 Postgre SQL 應用程式中的錯誤。