gal*_*ine 6 amazon-s3 amazon-web-services
我正在尝试评估使用 Kinesis 进行流处理日志文件。有一个单独的进程将新日志上传到 S3 存储桶 - 我无法触及该进程。我想知道是否有一种好方法可以将 S3 日志存储桶中显示的新文件流式传输到Kinesis 流中进行处理。到目前为止我找到的所有文档都涵盖了使用 S3 作为流的输出。
我当前的解决方案是让一台机器不断轮询 S3 是否有新文件,将新文件下载到本地机器并使用 Log4j 附加程序将其流式传输。这看起来效率很低。有没有更好的办法?
我意识到这是一个非常老的问题,但看看AWS Lambda。它非常适合您的用例,如此处所示。
在您的情况下,您将设置 s3 事件,以便添加到存储桶的每个新对象都会调用您的 lambda 函数。然后,在 lambda 函数中编写几行代码,读取文件并将内容发送到Kinesis 流的PutRecord(或批处理的PutRecords )方法。
这不仅适用于您的用例,而且也很棒,因为它检查了一些流行语:“无服务器”和“实时”!
| 归档时间: |
|
| 查看次数: |
5958 次 |
| 最近记录: |