问题描述
我有一个现有的 kinesis 实例,我的目标是通过 lambda 函数连接到它并处理记录。
我通过“创建新的 SAM 应用程序”使用 vscode aws-toolkit 扩展创建了 lambda。我在python中使用boto3放置了一些测试记录。每次我在调试模式下在本地撤销 lambda 时,事件都是一个空对象,因此没有要解析的记录。
我可以使用 boto3 连接到 kinesis 并在 python 中检索记录以确认记录的存在。
这是我的模板.yaml
Globals:
Function:
Timeout: 60
Resources:
KinesisRecors: Type: AWS::Serverless::Function
Properties:
CodeUri: kinesis_records/
Handler: app.lambda_handler
Runtime: python3.8
Events:
KinesisEvent:
Type: Kinesis
Properties:
Stream: arn:aws:....
StartingPosition: TRIM_HORIZON
BatchSize: 10
Enabled: false
我也用 Enabled: true
测试过,但没有成功
lamda 函数
import base64
def lambda_handler(event,context):
for record in event['Records']:
payload=base64.b64decode(record["kinesis"]["data"])
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)