---

こんにちは〜

【Elasticsearch】インデックスの取得、削除

毎回忘れているので備忘録
curlでElasticsearchのインデックスの取得・削除をしたいとき

インデックス全取得

$ curl -XGET localhost:9200/_cat/indices?v
health status index                                     uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   index-name gfgdaGNHTnm7UBmUT6nvbO   1   1       1021            0      1.3mb          1.3mb

?vをつけない場合はヘッダーが表示されない

$ curl -XGET localhost:9200/_cat/indices
yellow open index-name gfgdaGNHTnm7UBmUT6nvbO 1 1 1021  0   1.3mb   1.3mb

エイリアスの情報を取得

$ curl -XGET localhost:9200/_aliases?pretty
{
  "index-name" : {
    "aliases" : {
      "index-name-alias" : { }
    }
}

指定したインデックスの存在チェック

$ curl -XGET localhost:9200/index-name/_mapping?pretty=true

存在しない場合は、エラーが返ってくる↓

$ curl -XGET localhost:9200/index-name/_mapping?pretty=true
{
  "error" : {
    "root_cause" : [
      {
        "type" : "index_not_found_exception",
        "reason" : "no such index",
        "resource.type" : "index_or_alias",
        "resource.id" : "index-name",
        "index_uuid" : "_na_",
        "index" : "index-name"
      }
    ],
    "type" : "index_not_found_exception",
    "reason" : "no such index",
    "resource.type" : "index_or_alias",
    "resource.id" : "index-name",
    "index_uuid" : "_na_",
    "index" : "index-name"
  },
  "status" : 404
}

指定したインデックスの削除

$ curl -XDELETE localhost:9200/index-name?pretty=true
{
  "acknowledged" : true
}

?pretty=trueについて

?pretty=trueをつけると結果を整形してくれる

  • ?pretty=true をつけた時
$ curl -XGET localhost:9200/_aliases?pretty
{
  "index-name" : {
    "aliases" : { }
  }
}
  • つけないとき
$ curl -XGET localhost:9200/_aliases
{"index-name":{"aliases":{}}}

参考