0
我想一个logstash过滤器中使用Ruby代码,但它给出了一个错误:Logstash - 里面红宝石导入模块过滤
filter {
ruby {
code => "
arr = [ {id: 1, name: 'John' }, {id: 2, name: 'Sam' }, {id: 3, name: 'Bob' }]
if arr.any? {|h| h[:name] == "Sam"}
event['doc']['userInput']['programName'] = '222222'
end"
}
}
我认为错误是因为我需要导入可枚举模块(beucase没有行arr.any? {|h| h[:name] == "Sam"}
没有错误引发),但我不知道如何在logstash的ruby过滤器中导入模块?
问题是因为'Sam'是双引号之间,你需要因为代码是用双引号包围本身在整个代码块中使用单引号。 – Val
@Val - 非常感谢你,你解决了它!如果你写下你的评论作为答案,我肯定会接受它。 – BornToCode