Skip to content

Instantly share code, notes, and snippets.

@LamourBt
Forked from markusklems/lambda-dynamo
Created February 12, 2016 19:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save LamourBt/081def513e5c4d6ecb4d to your computer and use it in GitHub Desktop.
Save LamourBt/081def513e5c4d6ecb4d to your computer and use it in GitHub Desktop.
Short aws lambda sample program that puts an item into dynamodb
// create an IAM Lambda role with access to dynamodb
// Launch Lambda in the same region as your dynamodb region
// (here: us-east-1)
// dynamodb table with hash key = user and range key = datetime
console.log('Loading event');
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'});
exports.handler = function(event, context) {
console.log(JSON.stringify(event, null, ' '));
dynamodb.listTables(function(err, data) {
console.log(JSON.stringify(data, null, ' '));
});
var tableName = "chat";
var datetime = new Date().getTime().toString();
dynamodb.putItem({
"TableName": tableName,
"Item" : {
"user": {"S": event.user },
"date": {"S": datetime },
"msg": {"S": event.msg}
}
}, function(err, data) {
if (err) {
context.done('error','putting item into dynamodb failed: '+err);
}
else {
console.log('great success: '+JSON.stringify(data, null, ' '));
context.done('K THX BY');
}
});
};
// sample event
//{
// "user": "bart",
// "msg": "hey otto man"
//}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment