I'm migrating our logstash from 6.8 to 7.12 and I'm finding that the detection of empty fields is not working as it used to.
For example given the input
{
"foo":"",
"bar":"baz"
}
and the logstash filter
if [foo] and [foo] == "" {
mutate {
remove_field => [ "foo" ]
}
}
in logstash 6.8 we would have seen a document in elasticsearch like this:
{
"bar":"baz"
}
but in logstash 7.12 it seems like it's not detecting the empty field so we see this in elasticsearch:
{
"foo":"",
"bar":"baz"
}
Are there some changes I've missed in the release notes that are affecting this, or should I be doing field detection another way?
We use this approach quite a lot and it's affecting our ability to detect and remove bad data from logs, or to coerce the data with the mutate filter to have default values.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.