Kubernetes fluentd基于键值创建标记
将日志从Kubernetes传送到Fluentd聚合器 有没有办法将其中一个键值转换为标记值?例如,应用程序名称有一个键值。如果可以将其转换为标记值,则可以将其指向不同的输出Kubernetes fluentd基于键值创建标记,kubernetes,fluentd,Kubernetes,Fluentd,将日志从Kubernetes传送到Fluentd聚合器 有没有办法将其中一个键值转换为标记值?例如,应用程序名称有一个键值。如果可以将其转换为标记值,则可以将其指向不同的输出 谢谢,有一个fluentd record\u transformer插件。 @型记录变压器 主机名“#{Socket.gethostname}” 标记${tag} 输入示例:{“消息”:“你好,世界!”} 示例输出:{“message”:“hello world!”,“hostname”:“db001.interna
谢谢,有一个fluentd record\u transformer插件。
@型记录变压器
主机名“#{Socket.gethostname}”
标记${tag}
输入示例:{“消息”:“你好,世界!”}
示例输出:{“message”:“hello world!”,“hostname”:“db001.internal.Example.com”,“tag”:“foo.bar”}一旦创建记录,就无法编辑标记 这样做的方法是使用 你可以这样做:
<match kubernetes_logs>
@type rewrite_tag_filter
<rule>
key application_name
pattern (.+)
tag $1
</rule>
</match>
@类型重写\标记\过滤器
关键应用程序名称
模式(+)
标签$1
也就是说,这种方法使fluentd处理的记录数量增加了一倍。如果您只需要将记录定向到不同的端点,则输出插件通常允许按键筛选记录。对此进行了测试,结果证明它是有效的。当你说处理加倍时,我想这是因为消息再次被处理,并且将再次被处理?谢谢
<match kubernetes_logs>
@type rewrite_tag_filter
<rule>
key application_name
pattern (.+)
tag $1
</rule>
</match>