小编arc*_*max的帖子

流利:如何覆盖时间属性

盖兹......我们被卡住了...保释我们!:-)

我们正在使用Fluentd进行三步日志聚合管道.

[#1 - 尾部日志(原始日志)] - (TCP) - > [#2 - 将读取的日志解析为JSON] - (TCP) - > [#3 - 过滤并输出到Redis&Mongo]

我们不会在第一步将尾部日志转换为JSON.这主要是因为我们希望避免该服务器上的任何额外CPU消耗.我们拥有的日志行非常复杂,并且有意将延迟解析为步骤#2(在不同的群集/服务器上).

因此阶段#1发出:时间,标记和记录(原始日志行).我们在这里使用in_tail插件,因此默认情况下,'time'属性表示从文件中读取记录的时间.因此,在负载下,读取时间可能与日志行的实际时间戳不匹配.

JSON解析延迟到第二阶段.

在第二阶段,一旦我们将日志转换为JSON ...我们希望将阶段#1发送的'time'属性覆盖到JSON记录中的time属性.

我们在步骤#2使用Fluent-Plugin-Parser(https://github.com/tagomoris/fluent-plugin-parser).

我们如何覆盖时间属性并使FluentD使用它而不是步骤#1中读取的"时间"?

fluentd

3
推荐指数
1
解决办法
9696
查看次数

标签 统计

fluentd ×1