cat 快照 API编辑

cat API 仅用于通过命令行或 Kibana 控制台进行人工使用。它们适用于应用程序。对于应用程序使用,请使用 获取快照 API

返回有关存储在一个或多个存储库中的 快照 的信息。快照是索引或正在运行的 Elasticsearch 集群的备份。

请求编辑

GET /_cat/snapshots/<repository>

GET /_cat/snapshots

先决条件编辑

  • 如果启用了 Elasticsearch 安全功能,则必须具有 monitor_snapshotcreate_snapshotmanage 集群权限 才能使用此 API。

路径参数编辑

<repository>

(可选,字符串) 用于限制请求的快照存储库的逗号分隔列表。接受通配符表达式。 _all 返回所有存储库。

如果任何存储库在请求期间失败,Elasticsearch 将返回错误。

查询参数编辑

format
(可选,字符串) HTTP 接受标头 的简短版本。有效值包括 JSON、YAML 等。
h

(可选,字符串) 要显示的列名称的逗号分隔列表。

如果您没有指定要包含的列,则 API 将按以下列出的顺序返回默认列。如果您明确指定一个或多个列,则它只返回指定的列。

有效列是

idsnapshot
(默认) 快照的 ID,例如 snap1
repositoryrerepo
(默认) 存储库的名称,例如 repo1
statuss

(默认) 快照过程的状态。返回的值是

  • FAILED:快照过程失败。
  • INCOMPATIBLE:快照过程与当前集群版本不兼容。
  • IN_PROGRESS:快照过程已启动但尚未完成。
  • PARTIAL:快照过程已完成,但部分成功。
  • SUCCESS:快照过程已完成,完全成功。
start_epochstestartEpoch
(默认) 快照过程开始时的 Unix epoch 时间
start_timestistartTime
(默认) 快照过程开始时的 HH:MM:SS 时间。
end_epocheteendEpoch
(默认) 快照过程结束时的 Unix epoch 时间
end_timeetiendTime
(默认) 快照过程结束时的 HH:MM:SS 时间。
durationdur
(默认) 快照过程完成所需的时间,以 时间单位 表示。
indicesi
(默认) 快照中的索引数量。
successful_shardsss
(默认) 快照中成功的分片数量。
failed_shardsfs
(默认) 快照中失败的分片数量。
total_shardsts
(默认) 快照中的分片总数。
reasonr
任何快照失败的原因。
help
(可选,布尔值) 如果为 true,则响应包含帮助信息。默认为 false
ignore_unavailable
(可选,布尔值) 如果为 true,则响应不包含来自不可用快照的信息。默认为 false
master_timeout
(可选,时间单位) 等待主节点的期限。如果在超时时间到期之前主节点不可用,则请求将失败并返回错误。默认为 30s。也可以设置为 -1,表示请求永远不会超时。
s
(可选,字符串) 用于对响应进行排序的列名称或列别名的逗号分隔列表。
time
(可选,时间单位) 用于显示时间值的单位。
v
(可选,布尔值) 如果为 true,则响应包含列标题。默认为 false

示例编辑

GET /_cat/snapshots/repo1?v=true&s=id

API 返回以下响应

id     repository status start_epoch start_time end_epoch  end_time duration indices successful_shards failed_shards total_shards
snap1  repo1      FAILED 1445616705  18:11:45   1445616978 18:16:18     4.6m       1                 4             1            5
snap2  repo1      SUCCESS 1445634298  23:04:58   1445634672 23:11:12     6.2m       2                10             0           10