繁体   English   中英

AWS Lambda SES功能超时

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM