2016-06-28 20 views
1

Mit Elasticsearch 2.3.3 gibt es eine Möglichkeit, Shard-Größen mit der GET API, die JSON zurückgibt, zu erhalten?Elasticsearch GET API für Shard Größe

Zur Zeit habe ich die folgenden Methoden gefunden Scherbe Größe zu erhalten, von denen beide sind problematisch:

  1. /_recovery -> Reagiert mit JSON und bietet Scherbe Größe, aber Replikat-Shards werden als mit „Größe_in_Byte“ berichtet als 0 was falsch ist.

  2. /_cat/shards -> Bietet die richtige/gewünschte Informationen ABER ist NICHT JSON und Größen sind in nicht einheitlichen Einheiten als Strings gemeldet (zB 3,2 KB, 4,9 MB usw.). Dieser Endpunkt ist mehr für den visuellen Verbrauch gedacht, während ich die Antwort programmgesteuert von einem AJAX-Aufruf konsumieren möchte.

Ich habe eine Menge von der Suche auf Google getan/Elastic.com aber habe nichts gefunden, aber ich würde sehr überrascht, wenn es nicht vorhanden ist ....

Irgendwelche Ideen? Vielen Dank!!

+2

Haben Sie die '_stats' API getestet? https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-stats.html –

+0

Hey Animesh, ja, _stats scheint viel mehr auf "Nutzung" Statik konzentriert ("query_cache", "request_cache", "sucht", "bekomme" etc.). Die einzige Scherbe info ich sehe, ist ein sehr hohes Niveau Zusammenfassung: _shards: { gesamt: 10, erfolgreich: 5, fehlgeschlagen: 0 }, und dies, wenn für den Index Detailansicht zu fragen/[INDEX_NAME]/_ stats –

Antwort

1

Animesh war richtig, die _stats API ist die eine, die Sie wollen, aber Scherbe Ebene Statistiken zu erhalten, müssen Sie die level parameter angeben:

curl -XGET host:9200/my-index/_stats?level=shards 

Die level kann zur Zeit zu einem eingestellt werden:

  • shards
  • Index (default)
  • Knoten
+0

Danke für die Detailauswahl, habe diese Zeile (nicht einmal eine Beispiel-URL !!! hahaha) am Ende der Dokumentationsseite nicht gesehen, aber mein Fehler, dass ich nicht aufmerksamer gelesen habe! Animesh DANKE auch an Sie !! –