解释数据流生命周期
编辑解释数据流生命周期编辑
检索一个或多个数据流支持索引的当前数据流生命周期状态。
先决条件编辑
如果启用了 Elasticsearch 安全功能,您必须至少具有 manage_data_stream_lifecycle
索引权限或 view_index_metadata
索引权限才能使用此 API。有关更多信息,请参阅 安全权限。
请求编辑
GET <target>/_lifecycle/explain
描述编辑
检索有关索引或数据流的当前数据流生命周期状态的信息,例如索引创建以来的时间、滚动以来的时间、管理索引的生命周期配置,或 Elasticsearch 在生命周期执行期间可能遇到的任何错误。
路径参数编辑
-
<target>
- (必需,字符串) 索引或数据流的逗号分隔列表。
查询参数编辑
示例编辑
如果要检索数据流所有支持索引的生命周期状态,可以使用数据流名称。为简单起见,以下示例检索一个支持索引 .ds-metrics-2023.03.22-000001
的生命周期状态
response = client.indices.explain_data_lifecycle( index: '.ds-metrics-2023.03.22-000001' ) puts 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;\"}" } }