将Google Cloud Build日志存储在Cloud Logging中与将其存储在GCS中的区别



Google Cloud Build允许我们将日志存储在GCS或Cloud Logging中,或者两者都存储或不存储。我只是想知道在GCS中存储日志与在云日志中存储日志有什么区别。也许你可以强调的是:

  • 优点和缺点,或者我应该使用其中一个而不是另一个的典型场景
  • 价格差异,可能比其他价格更高

这是两个不同的地方,具有不同的功能

云记录桶允许您进行

  • 在不同的保留期内存储数据
  • 从云日志中查询数据(很快通过SQL表达式查询(
  • 将不同项目的日志放在一个地方(我写了一篇关于这方面的文章(
  • 使用云监控/云警报功能

云存储接收器允许您进行

  • 以不同的存储类成本在不同的保留期内存储数据
  • 将不同项目的日志放入一个存储桶中
  • 根据您的意愿移动、复制和管理您的文件
  • 在第三方工具中嵌入日志文件(如splunk(

IMO,主要区别在于查询能力和云监控和警报集成。在云存储中存储日志时丢失的东西。

但是,您可以通过云存储获得文件管理。

主要区别在于保留期(也就是我们在删除日志之前保留日志的时间(。

默认生成日志有一些默认保留期(有些是可配置的,有些是不可配置的(,您可以在本文档中阅读更多内容。

如果将构建日志存储在GCS中,则在保留它们的时间方面具有更大的灵活性。

成本取决于您的构建配置,您的构建生成的日志越多,您将支付的费用就越多,这实际上取决于您特定的构建配置。

这是一个相当广泛的问题,许多因素都取决于它。正如@boredadabdel所提到的,其中一个差异是retention periods

另一个区别是,当您使用Region/DualRegion/Multi-RegionStorageClass时,Google Cloud Storage具有不同的成本。使用谷歌云定价计算器检查估计成本是一种很好的做法。您还需要具有适当的Cloud Storage权限。根据您是否使用default Google-created Cloud Storage bucket,您需要Project Viewer角色,但对于user-specified Cloud Storage bucket,则需要Storage Object Viewer角色。

除了GCS,您还可以存储build artifacts,如存储构建工件文档中所述。

简而言之,这主要取决于您希望保留这些日志的时间(@boredabdel提到(,您拥有/可能拥有哪些权限,这些日志的重要性(使用云日志或云存储(。

  • 存储和管理生成日志
  • 查看生成结果
  • 配置和管理日志存储桶

最新更新