流利:一次重命名多个字段

时间:2018-01-11 13:07:30

标签: filter fluentd

我是流利的新手,面临以下问题:

目前,我有几个这样的字段:

Filename  value
a         v0
x.y.k1    v1
x.y.k2    v2
x.y.k3    v3
x.r.k4    v4
x.t.k5    v5
...

是否可以使用一个命令将所有x.something.possibleAnotherSomeThing重命名为

y.k1    v1
y.k2    v2
y.k3    v3
r.k4    v4
t.k5    v5

(删除第一部分)?

作为参考,在logstash中,表达式看起来像:rename => {"[x][y]" => "y"}rt相同),这就是诀窍,因此每行一行#34;密钥的第二部分"。

我知道record_transformer过滤器,可用于重命名密钥(使用remove_keys时)。

我可能会为每个这样的条目写一行,但这有几个缺点:

  • 如果定义的项目不可用,则会创建无用字段
  • 许多条目的巨大配置文件
  • 必须手动添加相同表单的新字段

如果相关,我使用fluentd-version v0.12(要求,不能使用其他版本)

是否有解决此问题的智能解决方案?

UPDATE1

这样的命令不起作用,但只删除字段:

<record>
  * ${record["x.*"]}
</record>
remove_keys ["x.*"]

1 个答案:

答案 0 :(得分:0)

如果您想在logstash中完成工作,可以使用ruby。 This answer应该有所帮助。