我在我的logstash配置中使用了kv过滤器,我有一个看起来像这样的字符串:
key1="value1" key2="" key3= key4=1
请注意,key3没有值;这导致key3被赋值为"key4=1"
我该如何解决这个问题?
答案 0 :(得分:1)
这可能不是最好的解决方案,因为我们盲目地取代:
mutate {
gsub => [
"message", "= ", '="" '
]
}
在kv过滤器之前使用此过滤器,等号后的任何空格都会被两个引号替换,从而得到以下结果:
"key1": "value1",
"key2": "\"\"",
"key3": "\"\"",
"key4": "1\r"