解释数据流生命周期
编辑解释数据流生命周期
编辑检索一个或多个数据流的支持索引的当前数据流生命周期状态。
先决条件
编辑如果启用了 Elasticsearch 安全功能,您必须至少拥有 manage_data_stream_lifecycle
索引权限或 view_index_metadata
索引权限才能使用此 API。有关更多信息,请参阅 安全权限。
请求
编辑GET <target>/_lifecycle/explain
描述
编辑检索有关索引或数据流当前数据流生命周期状态的信息,例如自索引创建以来的时间、自滚动更新以来的时间、管理索引的生命周期配置,或者 Elasticsearch 在生命周期执行期间可能遇到的任何错误。
路径参数
编辑-
<target>
- (必需,字符串) 以逗号分隔的索引或数据流列表。
查询参数
编辑-
include_defaults
- (可选,布尔值) 包括与目标生命周期相关的默认配置。默认为
false
。 -
master_timeout
- (可选,时间单位) 等待主节点的时间。如果在超时到期之前主节点不可用,则请求失败并返回错误。默认为
30s
。也可以设置为-1
表示请求永远不应超时。
示例
编辑如果要检索数据流的所有支持索引的生命周期状态,可以使用数据流名称。为简单起见,以下示例检索一个支持索引 .ds-metrics-2023.03.22-000001
的生命周期状态
resp = client.indices.explain_data_lifecycle( index=".ds-metrics-2023.03.22-000001", ) print(resp)
response = client.indices.explain_data_lifecycle( index: '.ds-metrics-2023.03.22-000001' ) puts response
const response = await client.indices.explainDataLifecycle({ index: ".ds-metrics-2023.03.22-000001", }); console.log(response);
GET .ds-metrics-2023.03.22-000001/_lifecycle/explain
如果索引由数据流生命周期管理,则 explain
将显示 managed_by_lifecycle
字段设置为 true
,并且响应的其余部分将包含有关此索引的生命周期执行状态的信息
{ "indices": { ".ds-metrics-2023.03.22-000001": { "index" : ".ds-metrics-2023.03.22-000001", "managed_by_lifecycle" : true, "index_creation_date_millis" : 1679475563571, "time_since_index_creation" : "843ms", "rollover_date_millis" : 1679475564293, "time_since_rollover" : "121ms", "lifecycle" : { }, "generation_time" : "121ms" } }
显示索引是否由数据流生命周期管理。如果索引不受数据流生命周期管理,则不会显示其他字段 |
|
创建索引的时间,此时间戳用于确定何时滚动更新 |
|
自索引创建以来的时间(用于通过 |
|
索引滚动更新的时间。如果索引未滚动更新,则不会显示此项。 |
|
自滚动更新以来的时间。如果索引未滚动更新,则不会显示此项。 |
|
应用于此索引的生命周期配置(在父数据流上配置) |
|
索引的生成时间表示自索引开始朝着用户可配置/特定业务生命周期部分(例如保留)前进的时间。 |
explain
还会报告与目标索引生命周期执行相关的任何错误
{ "indices": { ".ds-metrics-2023.03.22-000001": { "index" : ".ds-metrics-2023.03.22-000001", "managed_by_lifecycle" : true, "index_creation_date_millis" : 1679475563571, "time_since_index_creation" : "843ms", "lifecycle" : { "enabled": true }, "error": "{\"type\":\"validation_exception\",\"reason\":\"Validation Failed: 1: this action would add [2] shards, but this cluster currently has [4]/[3] maximum normal shards open;\"}" } }