获取全局检查点 API

编辑

获取全局检查点 API 的目的是返回索引的当前全局检查点。此 API 允许用户了解哪些序列号已在 Elasticsearch 中安全持久化。

轮询全局检查点推进

编辑

该 API 具有一个可选的轮询模式,由 wait_for_advance 查询参数启用。在轮询模式下,API 仅在全局检查点推进到超过提供的 checkpoints 后才会返回。默认情况下,checkpoints 是一个空数组,这将导致 API 立即返回。

如果在全局检查点推进到超过提供的 checkpoints 之前发生超时,Elasticsearch 将返回当前的全局检查点以及一个指示请求超时的布尔值。

目前,wait_for_advance 参数仅支持单分片索引。

轮询索引就绪

编辑

默认情况下,在轮询模式下,如果索引不存在或所有主分片未激活,则会返回异常。在轮询模式下,可以使用 wait_for_index 参数来修改此行为。如果 wait_for_index 设置为 true,则 API 将等待索引创建并且所有主分片都处于活动状态。

如果在满足这些条件之前发生超时,则将返回相关的异常。

目前,只有当 wait_for_advance 为 true 时,才支持 wait_for_index 参数。

请求

编辑

GET /<index>/_fleet/global_checkpoints

路径参数

编辑
<index>
(必需,字符串) 解析为单个索引的单个索引或索引别名。

查询参数

编辑
wait_for_advance
(可选,布尔值) 一个布尔值,控制是否等待(直到 timeout)全局检查点推进到超过提供的 checkpoints。默认为 false
wait_for_index
(可选,布尔值) 一个布尔值,控制是否等待(直到 timeout)目标索引存在并且所有主分片都处于活动状态。只有当 wait_for_advancetrue 时,才能为 true。默认为 false
checkpoints
(可选,列表) 上一个全局检查点的逗号分隔列表。当与 wait_for_advance 结合使用时,API 仅在全局检查点推进到超过 checkpoints 后才会返回。默认为空列表,这将导致 Elasticsearch 立即返回当前的全局检查点。
timeout
(可选,时间单位) 等待全局检查点推进到超过 checkpoints 的时间段。默认为 30s

响应主体

编辑
global_checkpoints
(整数数组) 索引的全局检查点。
timed_out
(布尔值) 如果 false,则全局检查点在指定的 timeout 内没有推进到超过 checkpoints