Skip to content

Instantly share code, notes, and snippets.

@nilstgmd
Last active August 29, 2015 14:26
Show Gist options
  • Save nilstgmd/261347043bc8bebfc750 to your computer and use it in GitHub Desktop.
Save nilstgmd/261347043bc8bebfc750 to your computer and use it in GitHub Desktop.
console.log('INFO: Loading event');
var AWS = require('aws-sdk');
var dynamodb = new AWS.DynamoDB();
exports.handler = function(event, context) {
console.log("INFO: Request received:\n", JSON.stringify(event));
console.log("INFO: Context received:\n", JSON.stringify(context));
var tableName = "data-us-east1";
var datetime = new Date().getTime().toString();
dynamodb.putItem({
"TableName": tableName,
"Item": {
"_id": {
"S": event.id
},
"VERSION_ID": {
"S": datetime
},
"CLIENT_ID": {
"S": event.CLIENT_ID
},
"OWNER_ID": {
"S": "myownerId@AdobeID"
},
"MOD_DATE": {
"S": datetime
},
"GENERATION": {
"N": "3"
},
"SCHEMA": {
"N": "1"
},
"data": {
"S": JSON.stringify(event.data)
},
"data_version": {
"S": datetime
},
"tags": {
"SS": event.tags !== undefined ? event.tags : [" "]
}
}
}, function(err, data) {
if (err) {
context.fail('ERROR: Write to DynamoDB failed: ' + err);
} else {
console.log('INFO: Write to DynamoDB succeeded: ' + JSON.stringify(data, null, ' '));
context.succeed('OK');
}
});
}
function guid() {
function s4() {
return Math.floor((1 + Math.random()) * 0x10000)
.toString(16)
.substring(1);
}
return s4() + s4() + '-' + s4() + '-' + s4() + '-' +
s4() + '-' + s4() + s4() + s4();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment