获取快照状态 API
编辑获取快照状态 API编辑
检索参与快照的每个分片的当前状态的详细描述。
response = client.snapshot.status puts response
GET _snapshot/_status
请求编辑
GET _snapshot/_status
GET _snapshot/<repository>/_status
GET _snapshot/<repository>/<snapshot>/_status
描述编辑
使用获取快照状态 API 获取有关参与快照的分片的详细信息。
如果省略 <snapshot>
请求路径参数,则请求仅检索当前正在运行的快照的信息。建议使用这种方式。
如果需要,可以指定 <repository>
和 <snapshot>
来检索特定快照的信息,即使它们当前没有运行。
使用 API 返回除当前正在运行的快照之外的任何快照的状态可能会很昂贵。API 需要对每个快照中的每个分片进行存储库读取。例如,如果您有 100 个快照,每个快照有 1,000 个分片,则包含所有快照的 API 请求将需要 100,000 次读取(100 个快照 * 1,000 个分片)。
根据存储的延迟,此类请求可能需要很长时间才能返回结果。这些请求还会占用机器资源,并且在使用云存储时会产生高处理成本。
路径参数编辑
-
<repository>
- (可选,字符串) 用于限制请求的快照存储库名称。如果未指定
<snapshot>
,则支持通配符 (*
)。 -
<snapshot>
- (可选,字符串) 要检索状态的快照的逗号分隔列表。默认为当前正在运行的快照。不支持通配符 (
*
)。
查询参数编辑
-
master_timeout
- (可选,时间单位) 等待主节点的时间段。如果在超时时间到期之前主节点不可用,则请求失败并返回错误。默认为
30s
。也可以设置为-1
,表示请求永远不会超时。 -
ignore_unavailable
-
(可选,布尔值) 如果为
false
,则请求会针对任何不可用的快照返回错误。默认为false
。如果为
true
,则请求会忽略不可用的快照,例如损坏的快照或暂时无法返回的快照。
响应主体编辑
-
repository
- (字符串) 包含快照的存储库的名称。
-
snapshot
- (字符串) 快照的名称。
-
uuid
- (字符串) 快照的通用唯一标识符 (UUID)。
-
state
-
(字符串) 指示当前快照状态。
的值
state
-
FAILED
- 快照以错误结束,并且未能存储任何数据。
-
STARTED
- 快照当前正在运行。
-
PARTIAL
- 全局集群状态已存储,但至少一个分片的数据未成功存储。响应的
failures
部分包含有关未正确处理的分片的更多详细信息。 -
SUCCESS
- 快照已完成,所有分片都已成功存储。
-
-
include_global_state
- (布尔值) 指示当前集群状态是否包含在快照中。
-
shards_stats
-
(对象) 包含快照中分片的数量。
的属性
shards_stats
-
initializing
- (整数) 仍在初始化的分片数量。
-
started
- (整数) 已启动但尚未完成的分片数量。
-
finalizing
- (整数) 正在完成但尚未完成的分片数量。
-
done
- (整数) 已成功初始化、启动和完成的分片数量。
-
failed
- (整数) 未成功包含在快照中的分片数量。
-
total
- (整数) 包含在快照中的分片总数。
-
-
stats
-
(对象) 提供有关包含在快照中的文件数量 (
file_count
) 和大小 (size_in_bytes
) 的详细信息。 -
<index>
-
(对象列表) 包含有关包含在快照中的索引的信息的对象列表。
的属性
<index>
-
shards_stats
- (对象) 请参阅
shards_stats
。 -
stats
- (对象) 请参阅
stats
。 -
shards
-
(对象列表) 包含有关包含快照的分片的信息的对象列表。
的属性
shards
-
stage
-
(字符串) 指示包含快照的分片的当前状态。
的属性
stage
-
DONE
- 已成功存储在存储库中的快照中的分片数量。
-
FAILURE
- 未成功存储在存储库中的快照中的分片数量。
-
FINALIZE
- 正在存储库中完成存储阶段的快照中的分片数量。
-
INIT
- 正在存储库中初始化存储阶段的快照中的分片数量。
-
STARTED
- 正在存储库中启动存储阶段的快照中的分片数量。
-
-
stats
- (对象) 请参阅
stats
。 -
total
- (对象) 快照引用的文件总数和大小。
-
start_time_in_millis
- (长整数) 请参阅
start_time_in_millis
。 -
time_in_millis
- (长整数) 请参阅
time_in_millis
。
-
-
示例编辑
以下请求返回 my_repository
存储库中 snapshot_2
的详细状态信息。此响应包含超出 获取快照 API 的其他信息,例如分片状态和文件统计信息。
response = client.snapshot.status( repository: 'my_repository', snapshot: 'snapshot_2' ) puts response
GET _snapshot/my_repository/snapshot_2/_status
{ "snapshots" : [ { "snapshot" : "snapshot_2", "repository" : "my_repository", "uuid" : "lNeQD1SvTQCqqJUMQSwmGg", "state" : "SUCCESS", "include_global_state" : false, "shards_stats" : { "initializing" : 0, "started" : 0, "finalizing" : 0, "done" : 1, "failed" : 0, "total" : 1 }, "stats" : { "incremental" : { "file_count" : 3, "size_in_bytes" : 5969 }, "total" : { "file_count" : 4, "size_in_bytes" : 6024 }, "start_time_in_millis" : 1594829326691, "time_in_millis" : 205 }, "indices" : { "index_1" : { "shards_stats" : { "initializing" : 0, "started" : 0, "finalizing" : 0, "done" : 1, "failed" : 0, "total" : 1 }, "stats" : { "incremental" : { "file_count" : 3, "size_in_bytes" : 5969 }, "total" : { "file_count" : 4, "size_in_bytes" : 6024 }, "start_time_in_millis" : 1594829326896, "time_in_millis" : 0 }, "shards" : { "0" : { "stage" : "DONE", "stats" : { "incremental" : { "file_count" : 3, "size_in_bytes" : 5969 }, "total" : { "file_count" : 4, "size_in_bytes" : 6024 }, "start_time_in_millis" : 1594829326896, "time_in_millis" : 0 } } } } } } ] }