Я использую aws-sdk (версия 2.1.8) для получения записей из Kinesis. Это внутри лямбда-функции узла. Попытка использовать ShardIteratorType: AT_TIMESTAMP. Я указываю метку времени в объекте params
const AWS = require("aws-sdk");
const kinesis = new AWS.Kinesis({ region: 'us-east-1' });
var params = {
ShardId: shard.ShardId, /* required */
ShardIteratorType: 'AT_TIMESTAMP', /* required */
StreamName: process.env.STREAM_NAME, /* required */
Timestamp: new Date(2017, 11, 08, 14, 32, 51)
};
kinesis.getShardIterator(params, function (err, data) {
if (err) {
return defer.reject(err);
}
defer.resolve(data);
});
Но я получаю эту ошибку: Неожиданный ключ «Отметка времени» найден в параметрах. Проверял форумы google, SO и aws, но безрезультатно. Я слежу за документацией AWS: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Kinesis.html#getShardIterator-property
Вот журналы функции Lambda, где я использую getShardIterator
2017-11-08T15:53:13.551Z ec3ef291-c49c-11e7-ad35-473206669891 SHARD
ITERATOR TYPE: AT_TIMESTAMP
2017-11-08T15:53:13.551Z ec3ef291-c49c-11e7-ad35-473206669891
TIMESTAMP: 2017-12-08T14:32:51.000Z
ShardIteratorTypes LATEST и TRIM_HORIZON работают нормально. Проблема возникает только тогда, когда я пытаюсь использовать AT_TIMESTAMP.