Я создал правило в AWS -iot, чтобы вызывать лямбду со следующим запросом:
select * from 'my_topic'
Это правило будет вызывать лямбду ниже javascript:
var AWS = require('aws-sdk');
var zlib = require('zlib');
var s3 = new AWS.S3();
exports.handler = (event, context, callback) => {
console.log("hello:");
var bucketName = "otonomobucket";
var keyName = getKeyName("myData", Date.now());
var content = event;
//var content = JSON.stringify(event);
console.log("event data:" + content);
var params = { Bucket: bucketName, Key: keyName, Body: content };
s3.putObject(params, function (err, data) {
if (err)
console.log(err)
else
console.log("Successfully saved object to " + bucketName + "/" + keyName);
});
};
function getKeyName(folder, filename) {
return folder + '/' + filename + ".txt";
}
Лямбда отлично работает, если я опубликую sh любую строку в my_topi c. Но лямбда не работает, если я опубликую sh bytearray в my_topi c. CloudWatch также не показывает никаких журналов. Как я могу получить массив байтов в свою лямбда-функцию.