【发布时间】:2018-05-09 19:36:56
【问题描述】:
我在检查写入 Kinesis 的数据时遇到问题。看起来下面的示例应该可以工作,但是我得到了一个从 get_records 返回的空列表(在 Records 字段中)。有什么想法会发生什么吗?
import uuid
import boto3
import time
streamname = 'mytestStream'
session = boto3.session.Session()
kinesis_client = session.client('kinesis', region_name='us-east-1')
##### WRITE TO KINESIS
partitionkey = str(uuid.uuid4())[:8]
put_response = kinesis_client.put_record(StreamName=streamname,Data='mytestdata',PartitionKey=partitionkey)
time.sleep(5)
##### READ FROM KINESIS
shard_id = kinesis_client.describe_stream(StreamName=streamname)['StreamDescription']['Shards'][0]['ShardId']
shard_iterator = kinesis_client.get_shard_iterator(StreamName=streamname, ShardId=shard_id, ShardIteratorType="LATEST")["ShardIterator"]
data_from_kinesis = kinesis_client.get_records(ShardIterator=shard_iterator)
谢谢!
【问题讨论】:
标签: python amazon-web-services boto3 amazon-kinesis