API симуляции шаблона индекса
Возвращает конфигурацию индекса, которая будет применена конкретным шаблоном индекса.
POST /_index_template/_simulate/template_1
Запрос
POST /_index_template/_simulate/<index-template>
Предварительные условия
- Если включены функции безопасности Elasticsearch, у вас должен быть
manage_index_templatesилиmanageдоступ к кластеру, чтобы использовать этот API.
Параметры пути
-
<index-template> - (Необязательно, строка) Имя шаблона индекса для симуляции. Чтобы протестировать конфигурацию шаблона перед его добавлением в кластер, опустите этот параметр и укажите конфигурацию шаблона в теле запроса.
Параметры запроса
-
create - (Необязательно, логическое значение) Если
true, шаблон, переданный в теле, используется только в том случае, если ни один существующий шаблон не соответствует тем же шаблонам индексов. Еслиfalse, для симуляции используется шаблон с наивысшим приоритетом. Обратите внимание, что шаблон в любом случае не добавляется и не обновляется постоянно; он используется только для симуляции. По умолчаниюfalse. -
master_timeout - (Необязательно, единицы времени) Период ожидания подключения к узлу мастера. Если ответ не получен до истечения срока ожидания, запрос завершается ошибкой. По умолчанию
30s.
Тело запроса
-
data_stream -
(Необязательно, объект) Если этот объект включён, шаблон используется для создания потоков данных и их базовых индексов. Поддерживается пустой объект.
Потоки данных требуют соответствующего шаблона индекса с объектом
data_stream. См. создание шаблона индекса.Свойства
data_stream-
hidden - (Необязательно, логическое значение) Если
true, поток данных скрыт. По умолчаниюfalse.
-
-
index_patterns -
(Обязательно, массив строк) Массив выражений с подстановкой (
*) используемых для соответствия именам потоков данных и индексов при создании.Elasticsearch включает несколько встроенных шаблонов индексов. Чтобы избежать конфликтов имён с этими шаблонами, см. Избегайте конфликтов шаблонов индексов.
-
_meta - (Необязательно, объект) Необязательные пользовательские метаданные о шаблоне индекса. Может содержать любые данные. Эта карта не генерируется автоматически Elasticsearch.
-
priority - (Необязательно, целое число) Приоритет для определения приоритета шаблона индекса при создании новых потоков данных или индексов. Выбирается шаблон индекса с наивысшим приоритетом. Если приоритет не указан, шаблон обрабатывается как имеющий приоритет 0 (наименьший приоритет). Это число не генерируется автоматически Elasticsearch.
-
template -
(Необязательно, объект) Шаблон для применения. Он может необязательно включать в себя конфигурацию
aliases,mappingsилиsettings.Свойства
template-
aliases -
(Необязательно, объект объектов) Алиасы для добавления.
Если шаблон индекса включает объект
data_stream, это алиасы потоков данных. В противном случае это алиасы индексов. Алиасы потоков данных игнорируют параметрыindex_routing,routingиsearch_routing.Свойства объектов
aliases-
<alias> -
(Обязательно, объект) Ключ — имя алиаса. Имена алиасов индексов поддерживают подстановку date math.
Тело объекта содержит параметры для алиаса. Поддерживается пустой объект.
Свойства
<alias>-
filter - (Необязательно, объект запроса Query DSL) Запрос для ограничения документов, к которым может получить доступ алиас.
-
index_routing - (Необязательно, строка) Значение, используемое для маршрутизации операций индексирования на конкретный фрагмент. Если указано, это переопределяет значение
routingдля операций индексирования. -
is_hidden - (Необязательно, логическое значение) Если
true, алиас скрыт. По умолчаниюfalse. Все индексы для алиаса должны иметь одинаковое значениеis_hidden. -
is_write_index - (Необязательно, логическое значение) Если
true, индекс является индексом записи для алиаса. По умолчаниюfalse. -
routing - (Необязательно, строка) Значение, используемое для маршрутизации операций индексирования и поиска на конкретный фрагмент.
-
search_routing - (Необязательно, строка) Значение, используемое для маршрутизации операций поиска на конкретный фрагмент. Если указано, это переопределяет значение
routingдля операций поиска.
-
-
-
mappings -
(Необязательно, объект отображения) Картирование для полей в индексе. При указании это отображение может включать:
- Имена полей
- Типы данных полей
- Параметры отображения
См. Картирование.
-
settings - (Необязательно, объект настроек индекса) Параметры конфигурации для индекса. См. Настройки индекса.
-
version Тело ответа
-
overlapping -
(массив) Любые шаблоны, которые были заменены указанным шаблоном.
Свойства
overlapping-
index_patterns - (массив) Шаблоны индексов, к которым применяется заменённый шаблон.
-
name - (строка) Название заменённого шаблона.
-
-
template -
(объект) Настройки, отображения и псевдонимы, которые будут применяться к соответствующим индексам.
Свойства
template-
aliases -
(Необязательно, объект объектов) Псевдонимы для индекса. Если шаблон индекса включает
data_stream, этот параметр не поддерживается.Свойства объектов
aliases-
<alias> -
(Обязательно, объект) Ключ — имя псевдонима. Имена псевдонимов индексов поддерживают математику дат.
Тело объекта содержит параметры для псевдонима. Поддерживается пустой объект.
Свойства
<alias>-
filter - (Необязательно, объект Query DSL) Запрос, используемый для ограничения документов, к которым может получить доступ псевдоним.
-
index_routing - (Необязательно, строка) Значение, используемое для маршрутизации операций индексирования на определённый фрагмент. Если указано, это переписывает значение
routingдля операций индексирования. -
is_hidden - (Необязательно, булево) Если
true, псевдоним скрыт. По умолчаниюfalse. Все индексы для псевдонима должны иметь одинаковое значениеis_hidden. -
is_write_index - (Необязательно, булево) Если
true, индекс является индексом записи для псевдонима. По умолчаниюfalse. -
routing - (Необязательно, строка) Значение, используемое для маршрутизации операций индексирования и поиска на определённый фрагмент.
-
search_routing - (Необязательно, строка) Значение, используемое для маршрутизации операций поиска на определённый фрагмент. Если указано, это переписывает значение
routingдля операций поиска.
-
-
-
mappings -
(Необязательно, объект отображения) Отображение полей в индексе. Если указано, это отображение может включать:
- Имена полей
- Типы данных полей
- Параметры отображения
См. Отображение.
-
settings - (Необязательно, объект настроек индекса) Параметры конфигурации для индекса. См. Настройки индекса.
-
Примеры
Моделирование существующего шаблона
В следующем примере создаётся и моделируется составной шаблон:
PUT /_component_template/ct1
{
"template": {
"settings": {
"index.number_of_shards": 2
}
}
}
PUT /_component_template/ct2
{
"template": {
"settings": {
"index.number_of_replicas": 0
},
"mappings": {
"properties": {
"@timestamp": {
"type": "date"
}
}
}
}
}
PUT /_index_template/final-template
{
"index_patterns": ["my-index-*"],
"composed_of": ["ct1", "ct2"],
"priority": 5
}
POST /_index_template/_simulate/final-template | Создать компонентный шаблон ( | |
| Создать компонентный шаблон ( | |
| Создать шаблон индекса ( | |
| Показать конфигурацию, применяемую шаблоном |
В ответе показаны настройки индекса, отображения и псевдонимы, применяемые шаблоном final-template:
{
"template" : {
"settings" : {
"index" : {
"number_of_shards" : "2",
"number_of_replicas" : "0"
}
},
"mappings" : {
"properties" : {
"@timestamp" : {
"type" : "date"
}
}
},
"aliases" : { }
},
"overlapping" : [ ]
} | Количество фрагментов из | |
| Количество реплик из | |
| Отображения из |
Моделирование произвольной конфигурации шаблона
Чтобы увидеть, какие настройки будут применены шаблоном до его добавления в кластер, можно передать конфигурацию шаблона в теле запроса. Указанный шаблон используется для моделирования, если он имеет более высокий приоритет, чем существующие шаблоны.
POST /_index_template/_simulate
{
"index_patterns": ["my-index-*"],
"composed_of": ["ct2"],
"priority": 10,
"template": {
"settings": {
"index.number_of_replicas": 1
}
}
} Ответ показывает любые перекрывающиеся шаблоны с более низким приоритетом.
{
"template" : {
"settings" : {
"index" : {
"number_of_replicas" : "1"
}
},
"mappings" : {
"properties" : {
"@timestamp" : {
"type" : "date"
}
}
},
"aliases" : { }
},
"overlapping" : [
{
"name" : "final-template",
"index_patterns" : [
"my-index-*"
]
}
]
}
© 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/7.17/indices-simulate-template.html