我正在试用ECS - Elastic Common Schema。我们需要突出显示文本搜索字段error.stack_trace。此字段是此处定义的多字段Map
我只是做了一个简单的测试运行Elasticsearch和Kibana 7.17.4一个字段定义为多字段和一个与单字段。
PUT simple-index-01
{
"mappings": {
"properties": {
"stack_trace01": { "type": "text" },
"stack_trace02": {
"fields": {
"text": {
"type": "text"
}
},
"type": "wildcard"
}
}
}
}
POST simple-index-01/_doc
{
"@timestamp" : "2022-06-07T08:21:05.000Z",
"stack_trace01": "java.lang.NullPointerException: null",
"stack_trace02": "java.lang.NullPointerException: null"
}
不突出显示多个字段是否是Kibana的预期行为?
1条答案
按热度按时间uyhoqukh1#
wildcard
类型将无法使用全文查询进行搜索,如文档中所述(它是关键字类型系列的一部分):wildcard
字段类型是一个专门的关键字字段,用于计划使用类似grep的wildcard
和regexp
查询搜索的非结构化机器生成内容。因此,当您尝试使用下面的查询时,它不会返回结果,这就是为什么它不会在discover中突出显示您的
stack_trace02
字段的原因。但下面的查询将给予结果:
您可以创建如下所示的索引Map,父类型字段应为
text
类型:现在,当您要搜索通配符类型的查询时,可以使用
stack_trace02.wildcard
。已经有类似行为的开放issue,但它不是针对
wildcard
类型。