在 Cloud Logging 中存储 Google Cloud Build 日志与在 GCS 中存储它们之间的区别

Difference between storing Google Cloud Build logs in Cloud Logging vs storing them in GCS

Google Cloud Build 允许我们将日志存储在 GCS 或 Cloud Logging 或两者或 none 中。我只想知道在 GCS 中存储日志与在 Cloud Logging 中存储日志有​​什么区别。也许您可以强调的一些事情是:

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

默认构建日志有一些默认保留期(有些是可配置的,有些不是),您可以在 this doc 中阅读更多信息。

如果您将构建日志存储在 GCS 中,您可以更灵活地保留它们。

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

这是一个相当广泛的问题,很多因素都取决于它。正如@boredabdel 提到的,差异之一是 retention periods.

另一个区别是 Google Cloud Storage 在您使用 Region/DualRegion/Multi-RegionStorageClass 时有不同的成本。使用 Google Cloud Pricing Calculator 检查估算成本是一种很好的做法。您还需要具有适当的 Cloud Storage 权限。取决于您是否将使用 default Google-created Cloud Storage bucket,您需要 Project Viewer 角色,但对于 user-specified Cloud Storage bucket,您需要 Storage Object Viewer 角色。

除了 GCS,您还可以存储 build artifacts,如 Storing build artifacts 文档中所述。

简而言之,这主要取决于你想保留这些日志多长时间(@boredabdel提到的),你的权限have/might,这些日志有多重要(使用Cloud Logging或云存储)。

这是两个不同的地方,各有特色

Cloud Logging 存储桶允许您

  • 在不同的保留期限内存储数据
  • 从 Cloud Logging 查询数据(很快通过 SQL 表达式)
  • 将来自不同项目的日志汇集到一个地方(我 wrote an article 在那个地方)
  • 使用云 monitoring/cloud 警报功能

云存储接收器允许您

  • 在不同的保留期限内以不同的存储方式存储数据 class 成本
  • 将不同项目的日志汇入一个桶
  • 随心所欲地移动、复制、管理您的文件。
  • 在第三方工具(如 splunk)中提取日志文件

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

但是,您可以使用 Cloud Storage 管理文件。