使用AWS-SDK Go从COS即时读取文件

时间:2018-10-11 09:21:57

标签: go amazon-s3

我在S3中有一个文件,该文件正在被不断修改。我将不得不阅读并将其实时显示在stdout上。

也就是说,我阅读了第一行,如果修改了文件并添加了第二行,则必须在stdout中反映这些更改。我希望所有这些都在单个命令中发生,而不必多次运行该命令以读取更新的文件。

我需要像bash命令“ tail -f <FILENAME>”这样的golang功能,该功能可从COS读取S3文件。

1 个答案:

答案 0 :(得分:1)

您提出的设计将无法正常工作

这是因为

  

Amazon S3为覆盖PUTS和DELETES提供最终的一致性   在所有地区。

(请参阅Introduction to S3

在实践中,这意味着重写或更新S3对象不会很快允许读取同一对象-这是您需要“尾巴”文件

我建议您重新考虑监视文件的方式

您还没有说为什么要尾部文件,但是(例如)如果您只是在寻找活动,则可以使用Cloudwatch从S3获取各种费率指标

如果您的原始文件位于EC2实例上,那么Cloudwatch Logs可能很合适