AWS DynamoDB node.js放入请求不会将数据放入Dynamo表中
我正在使用以下代码将数据提取到DynamoDB。
从Kinesis读取的代码
var AWS = require("aws-sdk"), DOC = require("dynamodb-doc"); docClient = new DOC.DynamoDB(); function upsert(result) { var info = new Info(result); console.log('Within upsert :', info.AcctNo); docClient.putItem({ TableName: "test_lamda_dynamo_table", Item: info }, function(err, data) { if (err) { console.error('error', err); context.done('error', err); } else { console.log('success', data); context.done('success', event.Records); } }); }
我无法在cloudwatch日志中看到error handling程序sysouts,也无法看到DynamoDB中的数据。
下面是来自cloudwatch的示例日志
"Within upsert Info: 1234456"
我无法在cloudwatch lambda函数日志中看到与PutItem函数相关的任何错误日志。
请build议我在这里做错了什么。
我在下面的链接find了解决这个问题的方法。
用Lambda查询DynamoDB什么也不做
这是因为在lambda处理程序中使用了context.succeed调用。
exports.handler = function(event, context) { event.Records.forEach(function(record) { try { var payload = new Buffer(record.kinesis.data, 'base64').toString('ascii'); console.log('Decoded payload:', payload); upsert(payload, context); // bug context.succeed("Success") } catch (e) { // log error and continue console.error('Error occured while inserting messages to Dynamo' + e); } }); };
- 直接从Bitbucket部署到AWS Elastic Beanstalk
- Amazon Elastic Beanstalk npm找不到package.json
- aws ec2 getaddrinfo ENOTFOUND错误代码
- AWS nodejs microservice:在S3存储桶中的文件发生更改时迭代调用服务
- 在AWS Lambda中实例化AWS Helper类时是否需要指定区域?
- 无法使用Git部署到AWS Elastic Beanstalk
- 在ElasticBeanstalk上运行Grunt
- 直接到s3 /客户端file upload。 用这种方法是否存在将未使用的文件存储在s3存储桶中的问题?
- 在亚马逊aws弹性beanstalk(或本地?)上安装parsing仪表板