我在GKE上的k8s集群在默认情况下有一个fluentd pod设置(当前名称为fluentd-gcp-v3.1.0-....),但是所有的日志都是非结构化的,挤在一个textPayload字段中。如果我的nginx (和所有其他)日志都以jsonPayload格式输出,那会好得多。
如果你打算自己手动安装代理,Structured Logging文档中有很多信息,但似乎没有任何关于在默认情况下在后台安装fluend的GKE上启用结构化日志的信息。
进入其中一个fluentd容器,我看到了以下文件,它们不是上面的结构化日志记录文档中列出的默认配置(nginx/syslog/apache)。
/etc/google-fluentd/config.d
containers.input.conf
monitoring.conf
output.conf
system.input.conf所以基本上,我在GKE/Stackdriver上得到了非结构化的nginx日志。如何将它们转换为结构化的?
发布于 2019-03-17 12:12:06
发布于 2019-08-11 12:49:42
这现在不需要任何定制;根据Stackdriver/STDERR文档,容器STDOUT/STDERR中的单行JSON日志将被解析为结构化数据。
https://cloud.google.com/monitoring/kubernetes-engine/legacy-stackdriver/logging#best_practices
https://stackoverflow.com/questions/55192075
复制相似问题