我使用google-fluentd将日志发送到GCP。问题是GCP日志要求日志为结构化日志,即JSON日志。我的服务已经将日志打印为结构化日志,但它得到了像时间戳、主机名和服务名这样的前缀,这些前缀变成了非结构化日志。那么,如何像下面这样将syslog解析成结构化日志,而只解析没有前缀的内容呢?
之前:
Nov 18 19:33:00 hostname-one service-name[909622]: {"timestamp":"2021-11-18T19:33:00.899671988+07:00","correlationId":"52e74b0d-bf41-4e41-ba8d-edc9f7062726","method":"POST","url":"/my/url","status":200,"responseTime":0.052602809}
after/expected:
{"timestamp":"2021-11-18T19:33:00.899671988+07:00","correlationId":"52e74b0d-bf41-4e41-ba8d-edc9f7062726","method":"POST","url":"/my/url","status":200,"responseTime":0.052602809}
发布于 2021-11-19 10:01:55
您可以通过将以下内容添加到fluentd配置文件中来更改格式以清除json:
<format>
@type json
</format>
这里有更多关于在fluentd documentation中配置输出的信息。
https://stackoverflow.com/questions/70020881
复制相似问题