Filebeat给出:[error]的对象映射试图将字段[error]解析为对象,但找到了具体的值

时间:2018-06-04 10:21:32

标签: elastic-stack logstash-grok filebeat

在弹性搜索中,我创建了一个具有下一个grok模式的摄取管道:

OK -%{DATA:label},%{INT:samples},%{BASE16FLOAT:average},%{BASE16FLOAT:min},%{BASE16FLOAT:max},%{BASE16FLOAT:p90},%{BASE16FLOAT:stddev},(?<error>([0-9].[0-9]*%)),

用下一行模拟这个:

OK - test,272,2275,593,14830,4581,1826.76,0.00%,.0,9.53,291717.4,30-04-2018 10:29:09 

在kibana工作得很完美。

当我让filebeat索引此文件时,我收到此错误:object mapping for [error] tried to parse field [error] as object, but found a concrete value出了什么问题?

3 个答案:

答案 0 :(得分:1)

将字段错误重命名为run_error可以解决所有问题。看起来字段错误是保留的。

答案 1 :(得分:0)

看起来像是弹性搜索索引模板中的映射错误。因此,请检查索引模板中的错误值。 这就是为什么它与kibana中的grok匹配器一起工作。

无论如何我会建议过滤插件csv,因为它会为你解析它

答案 2 :(得分:0)

我遇到过类似的情况,你的问题的原因是在同一个弹性索引中,你的error属性被发现是object类型,有时是value类型,Elasticsearch不允许这种情况