我的索引是用C#创建的:
CreateIndexRequest request = new CreateIndexRequest(index.ToString().ToLower());
TypeMapping typeMapping = new TypeMapping();
typeMapping.DateDetection = false;
request.Mappings = new Mappings();
request.Mappings.Add("object", typeMapping);
esConfig.CreateIndex(request);
这是在我试图查询名为' traceText":
的字段后的事实定义之后 "traceText": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
当我进行此搜索时,我没有得到任何点击:
GET /local-tlrgloadtenderout-2018.06.04/_search
{"query": {
"term" : {"traceText":"Global-Catch-Error"}
}}
类似于类似领域的简单事项:
GET /local-tlrgloadtenderout-2018.06.04/_search
{"query": {
"term" : {"traceLevel":"E"}
}}
当我使用Kibana时,我可以指定:
traceText:'Global-Catch-Error'
或
traceLevel: 'E'
一切都很完美。
要使Elastic Search查询生效,我需要做什么?我使用的是6.0.0版。
答案 0 :(得分:0)
我尝试过更改" term"到"匹配"它起作用了。请参阅此StackOverflow问题中的说明:elasticsearch match vs term query