获取数据流的生命周期
编辑获取数据流的生命周期
编辑先决条件
编辑请求
编辑GET _data_stream/<data-stream>/_lifecycle
描述
编辑获取指定数据流的生命周期。 如果请求了多个数据流,但其中至少有一个不存在,则 API 将返回 404
,因为至少有一个请求的资源无法检索。 如果请求的数据流未配置生命周期,它们仍将包含在 API 响应中,但会缺少 lifecycle
键。
路径参数
编辑-
<data-stream>
- (必需,字符串)用于限制请求的数据流的逗号分隔列表。 支持通配符(
*
)。 要定位所有数据流,请使用*
或_all
。
查询参数
编辑-
expand_wildcards
-
(可选,字符串)通配符模式可以匹配的数据流类型。 支持逗号分隔的值,例如
open,hidden
。 有效值包括-
all
,hidden
- 匹配任何数据流,包括隐藏的数据流。
-
open
,closed
- 匹配任何非隐藏的数据流。 数据流无法关闭。
-
none
- 不接受通配符模式。
默认为
open
。 -
-
include_defaults
- (可选,布尔值)如果为
true
,则在响应中返回所有默认设置。默认为false
。
响应正文
编辑-
data_streams
-
(对象数组)包含有关检索到的数据流生命周期的信息。
data_streams
中对象的属性-
name
- (字符串)数据流的名称。
-
lifecycle
-
(可选,对象)
lifecycle
的属性-
data_retention
- (可选,字符串)如果已定义,则表示数据流所有者为此数据流请求的保留期。
-
effective_retention
- (可选,字符串)如果已定义,则添加到此数据流的每个文档都将至少存储此时间段。 在此持续时间之后的任何时间都可能会删除该文档。 当为空时,此数据流中的每个文档都将无限期存储。 持续时间后可能会删除文档。当为空时,此数据流中的每个文档都将无限期存储。 有效保留期的计算方式如教程中所述。
-
retention_determined_by
- (可选,字符串)保留期的来源,它可以是三个值之一:
data_stream_configuration
、default_retention
或max_retention
。 -
rollover
- (可选,对象)将触发后备索引滚动更新的条件,由集群设置
cluster.lifecycle.default.rollover
配置。 此属性是实现细节,仅当查询参数include_defaults
设置为true
时才会检索。 此字段的内容可能会发生变化。
-
-
-
global_retention
-
(对象)包含全局最大和默认保留期。 如果未配置全局保留期,则这将是一个空对象。
global_retention
的属性-
max_retention
- (可选,字符串)由数据流生命周期管理的数据流的有效保留期不能超过此值。
-
default_retention
- (可选,字符串)这将是由数据流生命周期管理且未指定
data_retention
的数据流的有效保留期。
-
示例
编辑让我们检索生命周期
resp = client.indices.get_data_lifecycle( name="my-data-stream*", ) print(resp)
response = client.indices.get_data_lifecycle( name: 'my-data-stream*' ) puts response
const response = await client.indices.getDataLifecycle({ name: "my-data-stream*", }); console.log(response);
GET _data_stream/my-data-stream*/_lifecycle
响应将如下所示
{ "data_streams": [ { "name": "my-data-stream-1", "lifecycle": { "enabled": true, "data_retention": "7d", "effective_retention": "7d", "retention_determined_by": "data_stream_configuration" } }, { "name": "my-data-stream-2", "lifecycle": { "enabled": true, "data_retention": "7d", "effective_retention": "7d", "retention_determined_by": "data_stream_configuration" } } ], "global_retention": {} }