データストリームライフサイクルの説明
1つ以上のデータストリームバックインデックスの現在のdata stream lifecycleのステータスを取得します。
前提条件
Elasticsearchのセキュリティ機能が有効になっている場合、このAPIを使用するには少なくともmanage_data_stream_lifecycle
インデックス権限またはview_index_metadata
インデックス権限が必要です。詳細については、Security privilegesを参照してください。
リクエスト
GET <target>/_lifecycle/explain
説明
インデックスまたはデータストリームの現在のデータストリームライフサイクル状態に関する情報を取得します。これには、インデックス作成からの時間、ロールオーバーからの時間、インデックスを管理するライフサイクル構成、またはElasticsearchがライフサイクル実行中に遭遇した可能性のあるエラーが含まれます。
パスパラメータ
<target>
- (必須、文字列)インデックスまたはデータストリームのカンマ区切りリスト。
クエリパラメータ
include_defaults
- (オプション、Boolean)ターゲットのライフサイクルに関連するデフォルト構成を含めます。デフォルトは
false
です。 master_timeout
- (オプション、時間単位)マスターノードを待機する期間。タイムアウトが切れる前にマスターノードが利用できない場合、リクエストは失敗し、エラーが返されます。デフォルトは
30s
です。リクエストがタイムアウトしないことを示すために-1
に設定することもできます。
例
データストリームのすべてのバックインデックスのライフサイクル状態を取得したい場合は、データストリーム名を使用できます。簡単のため、以下の例では1つのバックインデックス.ds-metrics-2023.03.22-000001
のライフサイクル状態を取得します:
Python
resp = client.indices.explain_data_lifecycle(
index=".ds-metrics-2023.03.22-000001",
)
print(resp)
Ruby
response = client.indices.explain_data_lifecycle(
index: '.ds-metrics-2023.03.22-000001'
)
puts response
Js
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"
}
}
インデックスがデータストリームライフサイクルによって管理されているかどうかを示します。インデックスがデータストリームライフサイクルによって管理されていない場合、他のフィールドは表示されません。 | |
インデックスが作成された時刻。このタイムスタンプはロールオーバーのタイミングを決定するために使用されます。 | |
インデックス作成からの時間(max_age を介してインデックスをロールオーバーするタイミングを計算するために使用されます)。 |
|
インデックスがロールオーバーされた時刻。インデックスがロールオーバーされていない場合、これは表示されません。 | |
ロールオーバーからの時間。インデックスがロールオーバーされていない場合、これは表示されません。 | |
このインデックスに適用されるライフサイクル構成(親データストリームに設定されています)。 | |
インデックスの世代時間は、インデックスがユーザー設定可能な/ビジネス特有のライフサイクルの部分(例:保持)に向かって進行し始めた時刻を示します。generation_time は、存在する場合は発生日から、存在しない場合はロールオーバー日から、または両方が存在しない場合は作成日から計算されます。インデックスが書き込みインデックスである場合、generation_time は報告されません。なぜなら、それは保持やライフサイクルの他の部分に対して適格ではないからです。 |
[](#b4bec3a4279978704d20daf0156e1eae)
#### コンソール-結果
``````console-result
{
"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;\"}"
}
}
`
クラスタ内で許可されているシャードの数の制限により、ターゲットインデックスはロールオーバーできませんでした。 |