elasticsearch/docs/reference/ilm/apis/get-lifecycle.asciidoc
Lee Hinman 997db17852
Add usage to get ILM policy response (#74518)
This commit adds the "in_use_by" object to the response for ILM policies. This map shows the
indices, data streams, and composable templates that use the ILM policy.

An example output may look like:

```json
{
  "logs" : {
    "version" : 1,
    "modified_date" : "2021-06-23T18:42:08.381Z",
    "policy" : {
      ...
    },
    "in_use_by" : {
      "indices" : [".ds-logs-foo-barbaz-2021.06.23-000001", ".ds-logs-foo-other-2021.06.23-000001"],
      "data_streams" : ["logs-foo-barbaz", "logs-foo-other"],
      "composable_templates" : ["logs"]
    }
  }
}
```

Resolves #73869
2021-06-23 16:01:19 -06:00

123 lines
2.8 KiB
Text

[role="xpack"]
[testenv="basic"]
[[ilm-get-lifecycle]]
=== Get lifecycle policy API
++++
<titleabbrev>Get policy</titleabbrev>
++++
Retrieves a lifecycle policy.
[[ilm-get-lifecycle-request]]
==== {api-request-title}
`GET _ilm/policy`
`GET _ilm/policy/<policy_id>`
[[ilm-get-lifecycle-prereqs]]
==== {api-prereq-title}
* If the {es} {security-features} are enabled, you must have the `manage_ilm` or
`read_ilm` or both cluster privileges to use this API. For more information, see
<<security-privileges>>.
[[ilm-get-lifecycle-desc]]
==== {api-description-title}
Returns the specified policy definition. Includes the policy version and last
modified date. If no policy is specified, returns all defined policies.
[[ilm-get-lifecycle-path-params]]
==== {api-path-parms-title}
`<policy_id>`::
(Optional, string) Identifier for the policy.
[[ilm-get-lifecycle-query-params]]
==== {api-query-parms-title}
include::{es-repo-dir}/rest-api/common-parms.asciidoc[tag=timeoutparms]
[[ilm-get-lifecycle-example]]
==== {api-examples-title}
The following example retrieves `my_policy`:
//////////////////////////
[source,console]
--------------------------------------------------
PUT _ilm/policy/my_policy
{
"policy": {
"phases": {
"warm": {
"min_age": "10d",
"actions": {
"forcemerge": {
"max_num_segments": 1
}
}
},
"delete": {
"min_age": "30d",
"actions": {
"delete": {}
}
}
}
}
}
--------------------------------------------------
//////////////////////////
[source,console]
--------------------------------------------------
GET _ilm/policy/my_policy
--------------------------------------------------
// TEST[continued]
If the request succeeds, the body of the response contains the policy definition:
[source,console-result]
--------------------------------------------------
{
"my_policy": {
"version": 1, <1>
"modified_date": 82392349, <2>
"policy": {
"phases": {
"warm": {
"min_age": "10d",
"actions": {
"forcemerge": {
"max_num_segments": 1
}
}
},
"delete": {
"min_age": "30d",
"actions": {
"delete": {
"delete_searchable_snapshot": true
}
}
}
}
},
"in_use_by" : { <3>
"indices" : [],
"data_streams" : [],
"composable_templates" : []
}
}
}
--------------------------------------------------
// TESTRESPONSE[s/"modified_date": 82392349/"modified_date": $body.my_policy.modified_date/]
<1> The policy version is incremented whenever the policy is updated
<2> When this policy was last modified
<3> Which indices, data streams, or templates currently use this policy