【问题标题】:Transform json input with logstash filter使用 logstash 过滤器转换 json 输入
【发布时间】:2017-01-21 22:46:05
【问题描述】:

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

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

为了在 Kibana 中使用,我需要将其转换为

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

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

【问题讨论】:

  • 用 kv 过滤器可能可行,但它会非常复杂,所以我没有看到更简单的方法。

标签: filter logstash


【解决方案1】:

Baudsp 是对的。除非您的数据数组具有固定大小,否则无法做到这一点,因为 logstash 没有迭代的能力。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多