Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›REST API ›API потоков данных

Получение жизненного цикла потока данных

Новая справка по API

Для получения самых последних данных об API обратитесь к API потоков данных.

Получает жизненный цикл набора потоков данных.

Предварительные условия

  • Если включены функции безопасности Elasticsearch, вам необходимо иметь как минимум одно из manage прав доступа к индексу, manage_data_stream_lifecycle право доступа к индексу или view_index_metadata право, чтобы использовать этот API. Дополнительная информация приведена в Справке по правам доступа к функциям безопасности.

Запрос

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": {}
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/data-streams-get-lifecycle.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API