elasticsearch
索引名称为 data1
@authority
字段有时包含多个值或单个值
"@authority": [
"stelar",
"chrish",
"leona",
"micky",
"somany",
"peter",
"nitra"]
我要检索权限名称:
条件1.当它包含多个值时,它应该检索最后一个逗号后面的值
条件 2. 如果它包含单个值,则按原样返回该值 (我想编写一个脚本并显示另一个字段中的值,例如“last_@authority”)。
我的代码但失败了。
我想在我的
elasticsearch
索引中显示last_authority名称。
您可以像这样使用
ruby
过滤器:
filter {
ruby {
code => ‘
authority = event.get(‘@authority’)
if authority.is_a? String
event.set(‘some_field’, authority)
else
event.set(‘some_field’, authority.last())
end
‘
}
}