elasticsearch 如何在Elasticsearch中搜索没有特定字段的索引,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 如何在Elasticsearch中搜索没有特定字段的索引,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 如何在Elasticsearch中搜索没有特定字段的索引

elasticsearch 如何在Elasticsearch中搜索没有特定字段的索引,elasticsearch,kibana,elasticsearch,Kibana,我有一个弹性搜索集群,它有1000多个索引,我的大多数索引都有特定的时间戳(以历元格式),但是很少有索引有UTC时间戳,这会导致查询崩溃。当有人试图从kibana搜索时,我试图列出所有没有名为ts的字段的索引,我可以通过做旋度得到场映射 culr-XGET*/_映射/字段/ts?漂亮 然而,查看所有1000多个结果非常繁琐,请有人告诉我正确的查询,以排除所有没有字段“ts”的索引 如果我从集群中的kibana节点运行查询时cpu开始出现峰值,那么我正在运行的过滤器是 "filter": {

我有一个弹性搜索集群,它有1000多个索引,我的大多数索引都有特定的时间戳(以历元格式),但是很少有索引有UTC时间戳,这会导致查询崩溃。当有人试图从kibana搜索时,我试图列出所有没有名为ts的字段的索引,我可以通过做旋度得到场映射 culr-XGET*/_映射/字段/ts?漂亮

然而,查看所有1000多个结果非常繁琐,请有人告诉我正确的查询,以排除所有没有字段“ts”的索引

如果我从集群中的kibana节点运行查询时cpu开始出现峰值,那么我正在运行的过滤器是

"filter": {
  "list": {
    "0": {
      "type": "time",
      "field": "ts",
      "from": "now-5m",
      "to": "now",
      "mandate": "must",
      "active": true,
      "alias": "",
      "id": 0
    },
    "1": {
      "type": "querystring",
      "query": "_exists_:ts",
      "mandate": "must",
      "active": true,
      "alias": "",
      "id": 1
    }
  },
  "ids": [
    0,
    1
  ],
  "hide": true
}
},

这是我在ES节点中得到的日志

[2017-07-19 06:35:12,874][DEBUG][action.search            ] [Gargoyle] [ws][4], node[FbXhw2ERQT6QDPmNCuOMGQ], [R], v[21], s[STARTED], a[id=iH_6483qRHmJGSk95rOtQg]: Failed to execute [org.elasticsearch.action.search.SearchRequest@4078c587] lastShard [true]
RemoteTransportException[[Captain America][es-node1:9300][索引:数据/读取/搜索[阶段/查询]];嵌套:SearchParseException[未能分析搜索源[{“查询”:{“筛选”:{“查询”:{“bool”:{“应该”:[{“查询字符串”:{“查询”:“}}}}}}”,过滤器:{“bool”:{“必须”:[{“范围”:{“ts”:{“from”:15004458111001,“to”:1500446111001},{“fquery”:{“查询”:{“查询”:{“查询字符串”:{“ts:”{“查询”:“ts:”:“ts:”1500446010000)”,“{“真缓存”},{,“片段大小”:2147483647,“前标记”:[“@start highlight@”],“post_标记”:[“@end highlight@”],“size”:1000,“sort”:[{“_分数”:{“order”:“desc”},{“ts”:{“order”:“desc”}]];嵌套:SearchParseException[未找到[ts]的映射以便排序]; 原因:SearchParseException[未能分析搜索源[{“查询”:{“筛选”:{“查询”:{“bool”:{“应”:[{“查询字符串”:{“查询”:}]}}},筛选器:{“bool”:{“必须”:[{“范围”:{“ts”:{“from”:15004458111001,“to”:1500446111001},{“fquery”:{“查询”:{“查询”:{“查询字符串”:{“ts:”:“1500446010000)”,“{“真缓存”},{片段大小:2147483647,“pre_标记”:[“@start highlight@”],“post_标记”:[“@end highlight@”],“size”:1000,“sort”:[{“_score”:{“order”:“desc”},{“ts”:{“order”:“desc”}]];嵌套:SearchParseException[未找到[ts]的映射以进行排序]; 在org.elasticsearch.search.SearchService.parseSource上(SearchService.java:855) 位于org.elasticsearch.search.SearchService.createContext(SearchService.java:654) 在org.elasticsearch.search.SearchService.createAndPutContext上(SearchService.java:620) 在org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:371)上 在org.elasticsearch.search.action.SearchServiceTransportAction$SearchQueryTransportHandler.messageReceived(SearchServiceTransportAction.java:368) 在org.elasticsearch.search.action.SearchServiceTransportAction$SearchQueryTransportHandler.messageReceived(SearchServiceTransportAction.java:365) 位于org.elasticsearch.transport.TransportRequestHandler.messageReceived(TransportRequestHandler.java:33) 位于org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:75) 位于org.elasticsearch.transport.netty.MessageChannelHandler$RequestHandler.doRun(MessageChannelHandler.java:300) 位于org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) 位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 运行(Thread.java:745) 原因:SearchParseException[未找到[ts]的映射以便进行排序] 位于org.elasticsearch.search.sort.SortParseElement.addSortField(SortParseElement.java:212) 位于org.elasticsearch.search.sort.SortParseElement.addCompoundSortField(SortParseElement.java:186) 位于org.elasticsearch.search.sort.SortParseElement.parse(SortParseElement.java:84) 位于org.elasticsearch.search.SearchService.parseSource(SearchService.java:838) …还有12个


我正在尝试删除其中没有字段“ts”的索引,因为我正在寻找一个查询,其中我只能获得没有字段ts的索引,请有人帮我查询一下好吗?

在Kibana中,您可以使用并将以下内容添加到您的查询中

_exists_:ts AND ...the rest of your query

Val,感谢您的回复,当我使用exists进行查询时:ts仍然是其给定的SearchParseException嵌套:SearchParseException[未找到[ts]的映射以便排序];您能否打开“请求”选项卡并使用发送给ES的完整查询更新您的问题?是否确实要更新查询