ElasticSearch获取索引名称和存储大小

时间:2015-04-21 02:59:57

标签: json indexing elasticsearch ng-repeat

我试图以一种我可以使用Angular的$ http服务捕获信息的方式捕获所有索引及其大小的列表,然后使用ng-repeat迭代信​​息,最好是类似于:

<ul ng-repeat="elsindex in elsIndexHttpResponse"> <li>{{elsindex.name}}:{{elsindex.size}}</li> </ul>

我发现最接近的是: http://localhost:9200/_cat/indices?h=index,store.size

除了:

一个。它的响应不在json中,所以使用ng-repeat <li>元素很容易引用它并不能正常工作;和

湾如果可能的话,我希望获得大小输出以反映相同的单位大小(如字节)。

如果这涉及一些复杂的事情,那么我很感激能够指出我应该关注的地方。

我正在使用elasticsearch v1.4.4

非常感谢

3 个答案:

答案 0 :(得分:24)

我已经意识到这个问题的日期已经过去了,但我希望加上我的2美分。

http://localhost:9200/_cat/indices?h=index,store.size&bytes=k&format=json

实际上会让你得到你所要求的:

  • format = json - &gt;将输出格式化为json
  • bytes = k - &gt;以千字节输出大小

cat APIs doc

检索有关尺寸单位的信息

有关格式的信息是Sense的一次尝试,它有一些自动完成功能对于检测这些选项非常有用。

干杯。

答案 1 :(得分:12)

您可以尝试http://localhost:9200/_stats/index,store。它还将提供其他信息。如果您想在浏览器上看到,可以使用http://localhost:9200/_stats/index,store?pretty来获得更好的输出。 查看输出json以仅使用您需要的数据。请参阅indices stats api

答案 2 :(得分:1)

从上面的答案中稍作修改。

curl -X GET "localhost:9200/_cat/indices?h=index,store.size&bytes=gb?pretty"