【问题标题】:Logstash Create and Access ArrayLogstash 创建和访问数组
【发布时间】:2016-11-29 07:30:30
【问题描述】:

我想在用于设备的 logstash 配置文件中创建一个数组,然后通过我正在创建的新字段访问该数组值。示例:

filter {
     array_devicetype => ["Cisco ASA", "Cisco 3750"]
     mutate {
            add_field => { "Device Type" => "%{array_devicetype[0]}"
     }
}

然而,没有运气。有人可以帮我解决这个问题吗?谢谢。

【问题讨论】:

  • 答案是否解决了您的问题?如果没有,请详细说明。否则,请考虑将其标记为已接受的答案。谢谢

标签: logstash


【解决方案1】:

如果没有任何过滤插件可以帮助你,你可以尝试使用ruby,然后自己做。 例如

filter {
    ruby {
            code => "
                    event['array_devicetype'] = ['Cisco ASA', 'Cisco 3750']
                    event['Device Type'] = event['array_devicetype'][0]
            "
    }
}

使用这个过滤器可以做你想做的事。仅供参考。

【讨论】:

  • 太好了,谢谢!那么对于 ruby​​,我不需要使用 mutate 功能?
  • 想到的另一件事。我可以在整个过滤器部分有多个 ruby​​ {} 吗?我可以引用或访问在这些不同的 ruby​​ 区域中创建的变量吗?
  • 您可以拥有多个 ruby​​{} 插件。我没有尝试您是否可以访问在不同的 ruby​​ 区域中创建的局部变量。但是,如果变量在事件中。你可以使用它。因为事件是全局变量。
猜你喜欢
  • 2011-12-09
  • 2011-01-23
  • 1970-01-01
  • 1970-01-01
  • 2017-04-13
  • 1970-01-01
  • 2011-11-06
  • 2012-09-21
  • 1970-01-01
相关资源
最近更新 更多