我目前正在阅读容器日志,并将其作为我的源,并解析所有JSON格式的日志文件。基于我们的配置,JSON解析器正在按预期工作,但问题是时间格式。根据日志文件有多种时间格式。
例如,一个日志文件可以将时间存储为2020-05-28T21:00:07Z,但另一个日志文件将存储时间为2020-04-28T20:07:52.013557931Z。在所有情况下,时间也存储在一个名为" time“的键中,因此在默认情况下会尝试解析该键。
是否可以使用相同的过滤器来解析所有JSON数据,但它是否能够处理多个时间格式?我们是否需要为每种不同的时间格式创建不同的过滤器?
发布于 2020-05-28 21:42:33
这更像是一个流畅的问题,而不是一个直截了当的'Ruby‘问题。
但是,对于有关过滤器的具体问题,一般来说,不可能仅仅根据值来区分特定的日期格式。例如,“2020-03-04”是指3月4日(Yyyy Dd)还是4月3日(Yyyy)?不幸的是,我们无法仅从价值观中分辨出来。
最好的操作方法通常是验证每个源的格式(通过阅读该源的文档或其他方式),并确保可以使用标识信息将日期值与源联系起来。没有这一点,fluentd或任何其他程序都无法确定它是什么时候(尽管在某些情况下您可以使用技巧来确定它不是什么时候)。
https://stackoverflow.com/questions/62074666
复制相似问题