ฉันใช้ aws-sdk (เวอร์ชัน 2.1.8) เพื่อดึงบันทึกออกจาก Kinesis สิ่งนี้อยู่ภายในฟังก์ชันโหนด Lambda กำลังพยายามใช้ 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 เท่านั้นที่เกิดปัญหา