[英]aws lambda SES function timeout
我正在使用nodejs版本8.1和無休止的框架
在我的serverless.yml中,我有:
provider:
name: aws
runtime: nodejs8.10
region: eu-west-1
iamRoleStatements:
- Effect: "Allow"
Action:
- "ses:GetIdentityVerificationAttributes"
Resource: "*"
我的lambda看起來像這樣:
const AWS = require('aws-sdk');
var ses = new AWS.SES({
region: 'eu-west-1'
});
module.exports.handler = async (event, context, callback) => {
context.callbackWaitsForEmptyEventLoop = false;
let identityVerif = await ses.getIdentityVerificationAttributes({Identities: ['email']}).promise();
}
我不明白為什么永不執行getIdentity函數。 函數退出並超時。
您正在等待異步調用的響應,很可能沒有收到響應。 檢查CloudTrail中的SES API日志,以確保實際上是在發出請求。 聽起來您的lamdba函數無法訪問SES,如果您在VPC中運行它,就會發生這種情況。 您需要將NAT網關添加到VPC。 考慮將Lambda移出VPC。 這是幫助確定權衡的指南 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.