使用logstash过滤器转换json输入

时间:2016-09-14 07:50:31

标签: filter logstash

我正在通过Kafka管道获取logstash的输入,该工作正常。该流中最相关的数据采用以下格式

{data: [
    {
        name: 'fieldname1',
        value: 'value1'
    },
    {
        name: 'fieldname2',
        value: 'value2'
    },
    ..
]}

对于在Kibana中的使用,我需要将其转换为

{data: {
    'fieldname1': 'value1',
    'fieldname2': 'value2'
}}

除了ruby过滤器插件之外,还有更简单的方法吗?

1 个答案:

答案 0 :(得分:1)

鲍德斯普是对的。除非您的数据数组具有固定大小,否则无法执行此操作,因为logstash不具有迭代功能。

或者你可以编写自己的转换插件来做到这一点,但这可能是过度的(而且本质上也只是ruby代码)。