我们可以安排StackDriver Logging导出日志吗?

问题描述 投票:0回答:2

我是Google Cloud StackDriver Logging的新手,根据这个documentation,StackDriver将数据访问审核日志存储30天。在同一页面上也提到,日志条目的大小限制为100KB。 我知道日志可以使用Google Cloud Storage导出Cloud SDK以及在许多语言中使用Logging Libraries(我们更喜欢Python)。 我有两个与导出日志有关的问题,它们是:

  1. StackDriver中是否有任何方法可以安排类似于任务或cronjob的内容,以便在固定的时间间隔后自动将日志导出到Google云端存储中?
  2. 大于100KB的日志条目会发生什么。我猜他们被截断了。我的假设是否正确?如果是,是否有任何方法可以导出/查看完整的(根本没有截断)日志条目?
google-cloud-platform stackdriver google-cloud-stackdriver
2个回答
3
投票

StackDriver中是否有任何方法可以安排类似于任务或cronjob的内容,以便在固定的时间间隔后自动将日志导出到Google云端存储中?

Stackdriver支持通过sinks导出日志数据。由于一切都是自动的,因此您无法设置计划。基本上,数据输出as soon as possible,你无法控制每个汇点的出口量或出口之间的延迟。我从来没有发现这是一个问题。根据设计,记录不能用作实时系统。最近的是沉到PubSub,它有几秒延迟(根据我的经验)。

从Stackdriver导出数据有两种方法:

  1. 创建导出接收器。支持的目标是BigQuery,云存储和PubSub。日志条目将自动写入目标。然后,您可以使用工具处理导出的条目。这是推荐的方法。
  2. 用Python,Java等编写自己的代码来读取日志条目并用它们做你想做的事。调度取决于您。此方法是手动的,需要您管理计划和目的地。

大于100KB的日志条目会发生什么。我猜他们被截断了。我的假设是否正确?如果是,是否有任何方法可以导出/查看完整的(根本没有截断)日志条目?

超过条目最大大小的条目不能写入Stackdriver。尝试创建条目的API调用将失败,并显示类似于(Python错误消息)的错误消息:

400 Log entry with size 113.7K exceeds maximum size of 110.0K

这意味着除非编写者具有处理此案例的逻辑,否则将丢弃过大的条目。


0
投票

根据堆栈驱动程序日志记录的文档,整个过程是自动的。导出接收器到谷歌云存储比Bigquery和Cloud子/ pub慢。 link for the documentation

我最近使用导出接收器进行大查询,如果您不想使用其他第三方应用程序进行日志分析,这比cloud pub / sub更好。对于Bigquery接收器需要数据集,您要在哪里存储日志条目。我注意到,sink在bigqeury数据集中以时间戳为基础创建了bigquery表。

还有一件事,如果你想查询时间戳分区表,请检查此链接Legacy SQL Functions and Operators

© www.soinside.com 2019 - 2024. All rights reserved.