elasticsearch 索引恢复 查看 API

来源:互联网 发布:ajax json遍历 编辑:程序博客网 时间:2024/06/07 07:04

来源: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-recovery.html     

indices recovery API 提供了查看正在恢复中的索引状态信息,恢复状态可以指定特定的索引或者整个集群。

  例如我们可以通过下面的这条命令查看索引名为”index1”,”index2”两个索引的恢复状态信息,

curl -XGET http://localhost:9200/index1,index2/_recovery?pretty=true

为了能看到集群中所有的恢复状态信息,可以把索引名去掉,命令改成:

curl -XGET http://localhost:9200/_recovery?pretty=true

响应结果:

{  "index1" : {    "shards" : [ {      "id" : 0,      "type" : "snapshot",      "stage" : "index",      "primary" : true,      "start_time" : "2014-02-24T12:15:59.716",      "stop_time" : 0,      "total_time_in_millis" : 175576,      "source" : {        "repository" : "my_repository",        "snapshot" : "my_snapshot",        "index" : "index1"      },      "target" : {        "id" : "ryqJ5lO5S4-lSFbGntkEkg",        "hostname" : "my.fqdn",        "ip" : "10.0.1.7",        "name" : "my_es_node"      },      "index" : {        "files" : {          "total" : 73,          "reused" : 0,          "recovered" : 69,          "percent" : "94.5%"        },        "bytes" : {          "total" : 79063092,          "reused" : 0,          "recovered" : 68891939,          "percent" : "87.1%"        },        "total_time_in_millis" : 0      },      "translog" : {        "recovered" : 0,        "total_time_in_millis" : 0      },      "start" : {        "check_index_time" : 0,        "total_time_in_millis" : 0      }    } ]  }}

     以上返回结果展示了单个索引单个分片的响应情况,恢复源为备份快照仓库,目标为一个叫“my_es_node”名的节点。

  另外,输出结果还显示了恢复文件数和百分比,同样也输出了按照字节恢复数和恢复进度比率。

在一些场合中,还有可能想更详细的查看恢复信息,可以通过设置 "detailed=true"来展示更详细的信息,如:

    curl -XGET http://localhost:9200/_recovery?pretty=true&detailed=true
响应结果:
{  "index1" : {    "shards" : [ {      "id" : 0,      "type" : "gateway",      "stage" : "done",      "primary" : true,      "start_time" : "2014-02-24T12:38:06.349",      "stop_time" : "2014-02-24T12:38:08.464",      "total_time_in_millis" : 2115,      "source" : {        "id" : "RGMdRc-yQWWKIBM4DGvwqQ",        "hostname" : "my.fqdn",        "ip" : "10.0.1.7",        "name" : "my_es_node"      },      "target" : {        "id" : "RGMdRc-yQWWKIBM4DGvwqQ",        "hostname" : "my.fqdn",        "ip" : "10.0.1.7",        "name" : "my_es_node"      },      "index" : {        "files" : {          "total" : 26,          "reused" : 26,          "recovered" : 26,          "percent" : "100.0%",          "details" : [ {            "name" : "segments.gen",            "length" : 20,            "recovered" : 20          }, {            "name" : "_0.cfs",            "length" : 135306,            "recovered" : 135306          }, {            "name" : "segments_2",            "length" : 251,            "recovered" : 251          },           ...          ]        },        "bytes" : {          "total" : 26001617,          "reused" : 26001617,          "recovered" : 26001617,          "percent" : "100.0%"        },        "total_time_in_millis" : 2      },      "translog" : {        "recovered" : 71,        "total_time_in_millis" : 2025      },      "start" : {        "check_index_time" : 0,        "total_time_in_millis" : 88      }    } ]  }}

上述返回了详细的恢复列表信息(为了显示已经截去部分数据),包括恢复文件数和字节大小。还是恢复阶段时间等信息,上述恢复结果显示中显示的是已完成状态。默认情况下,不管恢复状态是否完成,只要状态信息还在,使用查看命令时均可返回。可以设置"active_only=true"来过滤只显示正在恢复的索引。

下面还有一些参数配置项:

detailed:显示详细信息,主要是用于显示物理文件恢复情况的,默认为false;

active_only:仅显示正在恢复过程中的恢复信息,默认为false

输出结果描述:

id:分片id

type:恢复来源信息,gatewaysnapshot(快照)replica(副本)relocating(重新分配)

stage:恢复阶段,init(初始化,未开始)index(读取索引元数据信息和正在从源复制数据到 目标上)start(正在执行,打开索引以备使用)translog(重新使用事务日志)finalize(清除)done(完成)

primary:true主分片,否则为false;

start_time:开始恢复时间戳;

stop_time:恢复完成时间戳;

total_time_in_millis:分片恢复所耗的毫秒数;

source:恢复源,如果是从快照恢复的描述为快照仓库,其他的为节点信息;

target:目标节点;

index:索引恢复统计信息;

translog:事务日志恢复统计信息;

start:打开索引的统计信息;

0 0
原创粉丝点击