【问题标题】:AWS Lambda SNS Destinations not working on failure or successAWS Lambda SNS 目标在失败或成功时不起作用
【发布时间】:2020-12-04 17:00:21
【问题描述】:

参考:https://aws.amazon.com/blogs/compute/introducing-aws-lambda-destinations/

检查this answer 说:只有异步 lambda 执行只对目标有效。

Lambda 代码:

const AWSManager = require('./AWSManager.js');
const request = require('request-promise'); 

exports.handler = async (event, context) => {
  var input = JSON.stringify(event, null, 2);
  console.log(event.region);
  //console.log("EVENT: \n" + JSON.stringify(event, null, 2))
  // TODO implement
  var secret_name, region_name;
  if(event.secretName){
    secret_name= event.secretName;
    region_name = event.region;
    
  }else{
    secret_name= "test/"
    region_name = "us-east-1"
  }
  console.log(secret_name)
  var secret = await AWSManager.getSecret(secret_name)
  //console.log('mysecret: ' + secret )
  var secret_values = JSON.parse(secret);
  //var request = require('request');
  var okta_org_url = secret_values['okta_org_url']
  var okta_token = secret_values['okta_token']
  var api_endpoint = okta_org_url + "api/v1/users?limit=25"
  var options = {
    'method': 'GET',
    'url': api_endpoint,
    'headers': {
       // header information
    }
  };
  var api_response = await request(options).then(res => res).catch(err => err)
 
 
  return {
    "statusCode": 200
  }
};

代码仅正确执行 SNS 目的地不起作用。 SNS 目的地订阅了电子邮件协议,以便在失败时发送电子邮件。

【问题讨论】:

    标签: javascript node.js amazon-web-services aws-lambda amazon-sns


    【解决方案1】:

    找到答案只是错误。

    根据AWS Lambda w/ SQS trigger, SQS Lambda Destinations, never adds to destination queue 中给出的解释,仅对于调用 lambda async 是正确的,您必须运行不同的命令。并且来自 UI 的测试输入不像异步那样工作。它用作同步调用。

    aws lambda invoke \     
    --function-name lambdaname \     
    --invocation-type Event \     
    --payload '{ "name": "Bob" }' \     
    response.json 
    

    参考:https://docs.aws.amazon.com/cli/latest/reference/lambda/invoke.html#examples

    这里是列表调用支持 lambda 异步和同步:

    https://aws.amazon.com/blogs/architecture/understanding-the-different-ways-to-invoke-lambda-functions/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-18
      • 2018-03-02
      • 1970-01-01
      相关资源
      最近更新 更多