我是Google Cloud StackDriver Logging的新手,并且根据documentation的要求,StackDriver将数据访问审核日志存储30天。在同一页面上还提到,日志条目的大小限制为100KB。
我知道一个事实,既可以使用Google Cloud Storage导出Cloud SDK,也可以使用多种语言的Logging Libraries导出日志(我们更喜欢Python)。
我有两个与导出日志有关的问题,分别是:
答案 0 :(得分:3)
StackDriver中是否可以安排类似于 不断在Google Cloud中导出日志的任务或cronjob 在固定的时间间隔后自动存储吗?
Stackdriver支持通过sinks
导出日志数据。您可以设置任何时间表,因为一切都是自动的。基本上,数据是as soon as possible
导出的,您无法控制每个接收器的导出数量或导出之间的延迟。我从来没有发现这是一个问题。根据设计,日志记录不能用作实时系统。最接近的是下潜到PubSub,后者有几秒钟的延迟(根据我的经验)。
有两种方法可以从Stackdriver导出数据:
大于100KB的日志条目将如何处理。我假设 他们被截断了。我的假设正确吗?如果可以,有什么办法 我们可以在其中导出/查看完整内容(完全不会被截断) 日志条目?
超出条目最大大小的条目无法写入Stackdriver。尝试创建条目的API调用将失败,并显示类似(Python错误消息)的错误消息:
400 Log entry with size 113.7K exceeds maximum size of 110.0K
这意味着太大的条目将被丢弃,除非作者有逻辑来处理这种情况。
答案 1 :(得分:0)
根据堆栈驱动程序记录的文档,整个过程是自动的。将接收器导出到Google云存储要比Bigquery和Cloud子/发布慢。 link for the documentation
我最近将导出接收器用于大型查询,如果您不想使用其他第三方应用程序进行日志分析,则它比云发布/订阅要好。对于Bigquery,接收器需要在其中存储日志条目的数据集。我注意到接收器在bigqeury数据集中的时间戳基础上创建了bigquery表。
如果要查询时间戳分区表,还需要检查一下此链接 Legacy SQL Functions and Operators