套件add_field未填充的价值,而不是它是硬编码语法中的索引

0

的问题

我试图创造新的输出的索引,使用3输入索引。 在新的输出索引我需要填充的几个具体领域,从输入索引。 我试图创造新的领域使用add_field.它是硬编码like'%{[index1name][field1inIndex1]}',而不是填充值指数。 我已经尝试了以下代码:

input
{
elasticsearch{
hosts => ["hostname"]
index => "index1"
query => '{"query":{"match_all":{}}}'
docinfo => "true"
user => "uname"
password =>"pwd"
ssl=>"true"
}
elasticsearch {
#same like above for index2
}
elasticsearch {
#same like above for index3
}
}    
filter
{
mutate
{
add_field =>["newfieldname","%{[index1][fieldinindex1]}"]
}
}
output 
{
elasticsearch {
#creating new index here
}
}
logstash
2021-11-23 23:11:06
1

最好的答案

0

如果一个sprintf参考是不是取代然后,它指示该领域中不存在事件。

该索引的名字是不是添加到领域名的一步深入使用这些输入。 (它可以加入的一部分[@元数据]如果您使docinfo选项。) 因此,除非该名的领域的文件的索引你的是从阅读中包含的指标名称有什么你需要的是

mutate { add_field => { "newfieldname" => "%{[fieldinindex1]}" } }

如果你想要索引中的名称[newfieldname]那么你必须使用的参考,例如

mutate { add_field => { "newfieldname" => "%{[@metadata][_index]}_%{[fieldinindex1]}" } }
2021-11-24 00:55:23

谢谢你@獾。 上你的答案是工作。 但我有docinfo=>"真正"在我的输入。 因此,它应该采取indexname
slj

调整的答案,以显示如何使用指数的名字。
Badger

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................