代码之家  ›  专栏  ›  技术社区  ›  Nagireddy Hanisha

使用awsdkgo从cos动态读取文件

  •  0
  • Nagireddy Hanisha  · 技术社区  · 6 年前

    我在S3中有一个不断修改的文件。我必须阅读并在 stdout .

    也就是说,我读取了第一行,如果修改了文件并添加了第二行,我将不得不在 标准输出 . 我希望所有这些都在一个命令中发生,并且不需要多次运行该命令来读取更新的文件。

    我需要像bash命令“tail-f”这样的golang功能 <FILENAME> “它从cos读取一个s3文件。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Vorsprung    6 年前

    你提出的设计不能正常工作

    这是因为

    AmazonS3提供覆盖放置和删除的最终一致性 在所有地区。

    (见 Introduction to S3 )

    实际上,这意味着重写或更新S3对象不会很快允许读取同一个对象——这就是您需要“跟踪”一个文件的原因。

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

    您没有说明为什么要跟踪该文件,但是(例如)如果您只是在寻找活动,那么可以使用CloudWatch从S3获取各种速率指标。

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