我想列出ElasticSearch服务器上的所有索引。我试了一下:

curl -XGET localhost:9200/

但它给了我这个:

{
  "ok" : true,
  "status" : 200,
  "name" : "El Aguila",
  "version" : {
    "number" : "0.19.3",
    "snapshot_build" : false
  },
  "tagline" : "You Know, for Search"
}

我想要一个所有索引的列表..


当前回答

To get all the details in Kibana.
 GET /_cat/indices




To get names only in Kibana.
GET /_cat/indices?h=index

如果不使用Kibana,你可以在postman中发送一个get请求,或者在Brower中输入这个,这样你就会得到一个索引名称列表

http://localhost:9200/_cat/indices?h=index

其他回答

您可以查询localhost:9200/_status,这将为您提供关于每个索引和信息的列表。响应看起来像这样:

{
  "ok" : true,
  "_shards" : { ... },
  "indices" : {
    "my_index" : { ... },
    "another_index" : { ... }
  }
}

要获得集群中所有索引的简明列表,请调用

curl http://localhost:9200/_aliases

这将为您提供索引及其别名的列表。

如果你想要漂亮的打印,添加pretty=true:

curl http://localhost:9200/_aliases?pretty=true

如果你的索引是old_deuteronomy和mungojerrie,结果会是这样的:

{
  "old_deuteronomy" : {
    "aliases" : { }
  },
  "mungojerrie" : {
    "aliases" : {
      "rumpleteazer" : { },
      "that_horrible_cat" : { }
    }
  }
}

_stats命令提供了通过指定所需指标来自定义结果的方法。要获得索引,查询如下:

GET /_stats/indices

_stats查询的一般格式是:

/_stats
/_stats/{metric}
/_stats/{metric}/{indexMetric}
/{index}/_stats
/{index}/_stats/{metric}

指标在哪里:

indices, docs, store, indexing, search, get, merge, 
refresh, flush, warmer, filter_cache, id_cache, 
percolate, segments, fielddata, completion

作为对自己的练习,我写了一个小的elasticsearch插件,提供了列出elasticsearch索引的功能,而不需要任何其他信息。你可以在以下网址找到它:

http://blog.iterativ.ch/2014/04/11/listindices-writing-your-first-elasticsearch-java-plugin/

https://github.com/iterativ/elasticsearch-listindices

使用kibana发送请求和获取响应,kibana可以自动完成弹性查询生成器,并且有更多的工具

看看kibana

 GET /_cat/indices

Kibana开发工具

http://localhost:5601/app/kibana#/dev_tools/console

通过Curl访问安全弹性搜索(更新2020)

如果弹性搜索是安全的,您可以使用此命令列出索引

curl http://username:password@localhost:9200/_aliases?pretty=true