При написании лямбды я беру файл с S3 и отправляю его в Elasticsearch.Когда я прикрепил файл с помощью pipe-attachment, он присоединяется правильно, но перезаписывает все мои поля.Как мне просто прикрепить файл к моей записи, сохраняя мои предыдущие поля в моем ответе?Не могу найти документацию по этому действию.
Я использую Elasticsearch.index для первоначального прикрепления файла, который работает, но перезаписывает все остальные мои поля.Я пробовал Elasticsearch.update, но не могу заставить его работать.
s3.getObject({Bucket: bucket, Key: key}, function (err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
context.fail();
} else {
console.log('data: ', data); // successful response
var attachment = data.Body.toString('base64');
console.log('attachment: ', attachment);
elasticsearch.index(
{
index: 'files',
pipeline: 'attachment',
type: 'file',
id: key,
body: {
data: attachment
}
},
function (error, resp) {
if (error) {
console.trace('index error!', error);
} else {
console.log('index response', resp);
context.succeed();
}
}
);
}
});