2017-10-08 107 views
0

的boto3文檔提到Boto3閱讀室壁運動流

在請求中,可以指定碎片迭代器類型AT_TIMESTAMP從任意時間點讀記錄,TRIM_HORIZON造成ShardIterator指向系統碎片中最後一條未修剪的記錄(碎片中最早的數據記錄)或LATEST,以便始終讀取碎片中的最新數據。

這是

my_shard_id = 'shardId-000000000000' 

shard_iterator = kinesis_client.get_shard_iterator(StreamName=my_stream_name, 
                 ShardId=my_shard_id, 
                 ShardIteratorType='TRIM_HORIZON') 

設置ShardIteratorType =「TRIM_HORIZON」應該給我從最早的項目,這是我的整個用例,即能夠旋轉了一個新的消費基礎啓動發電機並讓它處理來自過去24小時的所有事件。

但是這不是爲我工作,我得到空記錄

{u'Records': [], 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': 'e705d8f2-dd62-f0d5-b551-4dd5ace4499e', 'HTTPHeaders': {'x-amzn-requestid': 'e705d8f2-dd62-f0d5-b551-4dd5ace4499e', 'content-length': '284', 'x-amz-id-2': '5bI4T8k4DIpvCsBRUtMw1WFgWqa4tT5X8bUj9mg1NGUFMBZe36iqibCRjDHathIe4j6GbmI6v8A+9d1TiBtbGg7/Sn4GduQPDQ0HVpcP/sM=', 'server': 'Apache-Coyote/1.1', 'date': 'Sun, 08 Oct 2017 21:04:39 GMT', 'content-type': 'application/x-amz-json-1.1'}}, u'NextShardIterator': u'AAAAAAAAAAH1FwRBEtaHytINAF8WzGDaKRaY5OEKCjFS+mKK5AQFqEf1SPJ8crMIMuBSNFOtfFn3KBT63r5f/bu40OLwhDztEbJgeYjciHVJERpFBDENiWOAZ760flMiZ0mXwCGfFW8cq/8hVC/qiwg1yF96+ujIIAz4vzvK7N944LBB2vH35+8noU/FBK9LCHLOxXxNAQXoOarcEPEU6jt112kOwEyT', u'MillisBehindLatest': 0} 
{u'Records': [], 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': 'c51c2d88-e979-8b07-9748-b8a598ff324c', 'HTTPHeaders': {'x-amzn-requestid': 'c51c2d88-e979-8b07-9748-b8a598ff324c', 'content-length': '284', 'x-amz-id-2': 'BE5rXnfii4ifLDlFuIHQxTBpUvhJ2MJKW92QjzDVFNUD4xRgIgcWhn89dA5EbdPo8HGb5MJDzZ+QfGqB9R4JykZmkvTgb3Fd9y9zaionRBk=', 'server': 'Apache-Coyote/1.1', 'date': 'Sun, 08 Oct 2017 21:04:44 GMT', 'content-type': 'application/x-amz-json-1.1'}}, u'NextShardIterator': u'AAAAAAAAAAEE0Qf0P4bXC7fg7yWj5SejVw9AIyN0iEnHWfj+nN8rIFSPwtDASvHIs+ZPcE2E7EU/gcvLqceWZ+GCptAnc6C3AzwsBK4HamaGCbV7K8l0fTnVMvErzboVGGqtAH4iHrimleGzUgJJ0TYgSDmPvdGDXCP+PRtwTFVGGZxK05jxTHf1qqOm74EfOMe65Bg+10MaNO4IO3NePm5lAy6AbQ/q', u'MillisBehindLatest': 0} 

但是那一刻我創建它在這裏展示了一個新的事件。

我需要這個來顯示流過去24小時的所有事件。

回答

0

TRIM_HORIZON開始從最早的項目讀取數據,但是它從之前使用檢查點停止的位置開始。您可以在DynamoDB中看到檢查點表。