Logstash 发送一个字段作为日志存储中的根字段

Logstash 发送一个字段作为日志存储中的根字段,logstash,Logstash,在logstash 5.4中工作。目前,我有一些事件,它们在一个“数据”字段中发送所有数据,并在根级别的弹性信息中提供一些我不想要的额外信息。所以一个数据结构看起来像这样 { "index": "index-value", "otherMetaData" : "stuff", "data" {"key1":"value1", "key2":"value2"} } 我希望我的日志只发送这个值的数据部分,这样弹性就可以 {"key1":"value1", "key2":"value2"} 没有别

在logstash 5.4中工作。目前,我有一些事件,它们在一个“数据”字段中发送所有数据,并在根级别的弹性信息中提供一些我不想要的额外信息。所以一个数据结构看起来像这样

{
"index": "index-value",
"otherMetaData" : "stuff",
"data" {"key1":"value1", "key2":"value2"}
}
我希望我的日志只发送这个值的数据部分,这样弹性就可以

{"key1":"value1", "key2":"value2"}

没有别的了。logstash中是否有根插件的设置值?或者一个简单的方法来实现这一点

我认为最简单的方法是将源设置为“数据”

您还可以使用filter mutate或定制ruby脚本,如Magnus Bäck在

弹性的和。这些帮助我理解了
“%{[message]}”
的含义

filter {
    json {
        source => "data"
    }
}