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"
}
모든 인덱스 목록을 원합니다 ..
답변
클러스터에있는 모든 지수의 간결한 목록을 보려면
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" : { }
}
}
}
답변
시험
curl 'localhost:9200/_cat/indices?v'
그것은 당신에게 테이블 방식으로 자기 설명 출력을 제공 할 것입니다
health index pri rep docs.count docs.deleted store.size pri.store.size
yellow customer 5 1 0 0 495b 495b
답변
당신은 쿼리 할 수 있으며 localhost:9200/_status
, 각각에 대한 색인 및 정보 목록을 제공합니다. 응답은 다음과 같습니다.
{
"ok" : true,
"_shards" : { ... },
"indices" : {
"my_index" : { ... },
"another_index" : { ... }
}
}
답변
_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 플러그인을 작성했습니다. 다음 URL에서 찾을 수 있습니다.
http://blog.iterativ.ch/2014/04/11/listindices-writing-your-first-elasticsearch-java-plugin/
https://github.com/iterativ/elasticsearch-listindices
답변
나는 이것을 사용하여 모든 지수를 얻는다.
$ curl --silent 'http://127.0.0.1:9200/_cat/indices' | cut -d\ -f3
이 목록으로 작업 할 수 있습니다 …
예
$ curl -s 'http://localhost:9200/_cat/indices' | head -5
green open qa-abcdefq_1458925279526 1 6 0 0 1008b 144b
green open qa-test_learnq_1460483735129 1 6 0 0 1008b 144b
green open qa-testimportd_1458925361399 1 6 0 0 1008b 144b
green open qa-test123p_reports 1 6 3868280 25605 5.9gb 870.5mb
green open qa-dan050216p_1462220967543 1 6 0 0 1008b 144b
위의 세 번째 열 (지수 이름)을 얻으려면 :
$ curl -s 'http://localhost:9200/_cat/indices' | head -5 | cut -d\ -f3
qa-abcdefq_1458925279526
qa-test_learnq_1460483735129
qa-testimportd_1458925361399
qa-test123p_reports
qa-dan050216p_1462220967543
참고 :awk '{print $3}'
대신 사용할 수도 있습니다 cut -d\ -f3
.
열 헤더
?v
열 머리글을 추가하기 위해 쿼리에 접미사를 붙일 수도 있습니다 . 그렇게하면 cut...
방법 이 중단 되므로이 awk..
시점에서 선택을 사용하는 것이 좋습니다 .
$ curl -s 'http://localhost:9200/_cat/indices?v' | head -5
health status index pri rep docs.count docs.deleted store.size pri.store.size
green open qa-abcdefq_1458925279526 1 6 0 0 1008b 144b
green open qa-test_learnq_1460483735129 1 6 0 0 1008b 144b
green open qa-testimportd_1458925361399 1 6 0 0 1008b 144b
green open qa-test123p_reports 1 6 3868280 25605 5.9gb 870.5mb
답변
또한 사람이 읽을 수있는 인덱스 목록을 제공하는 / _cat / indices를 수행하는 것이 좋습니다.
답변
인덱스 만 목록을 얻는 가장 간단한 방법은 위의 답변을 ‘h = index’매개 변수와 함께 사용하는 것입니다.
curl -XGET "localhost:9200/_cat/indices?h=index"