2016-08-23 45 views
-1

我在AWS Lambda中有一个函数,它由AWS DynamoDB中的一个操作触发。该功能包含此代码假设使用AWS SNS发送新的推送消息:如何使用lambda触发器检测DynamoDB中的PutItem操作?

console.log('Loading function'); 

var AWS = require('aws-sdk'); 
AWS.config.region = 'us-west-2'; 

exports.handler = function(event, context) { 
    console.log("\n\nLoading handler\n\n"); 
    var sns = new AWS.SNS(); 

    sns.publish({ 
     Message: 'Test publish to SNS from Lambda', 
     TopicArn: 'TOPIC_ARN' 
    }, function(err, data) { 
     if (err) { 
      console.log(err.stack); 
      return; 
     } 
     console.log('push sent'); 
     console.log(data); 
     context.done(null, 'Function Finished!'); 
    }); 
}; 

我怎样才能触发此Lambda码仅当PutItem操作在DynamoDB表会发生什么?

另外,有没有一种方法可以将新添加的项目的属性添加到表格中,并检查它们中的一个是否等于字符串?

This是我在AWS开发者论坛的问题。

回答

-1
// Check if it is PutItem event 
if (record.eventName == "INSERT") { 
    ... 
    // Get item's id 
    var id = record.dynamodb.Keys.Id.N; 
    ... 
} 
+1

请编辑更多信息。仅限代码和“尝试这个”的答案是不鼓励的,因为它们不包含可搜索的内容,也不解释为什么有人应该“尝试这个”。 – abarisone

相关问题