Сборка шаблона индекса из шаблонов-компонентов и симуляция результата
ElasticsearchЖизненный цикл индексаКоманда
PUT _component_template/app-mappings
{
"template": {
"mappings": {
"dynamic": "strict",
"properties": {
"@timestamp": { "type": "date" },
"level": { "type": "keyword" },
"msg": { "type": "text" }
}
}
}
}
PUT _index_template/app-events
{
"index_patterns": ["app-events-*"],
"priority": 500,
"composed_of": ["app-mappings"],
"template": { "settings": { "number_of_shards": 1, "refresh_interval": "5s" } }
}
# See the final settings and mapping before the index is created:
POST _index_template/_simulate_index/app-events-000001
GET _cat/templates?v&s=nameЧто делает
Определяет повторно используемый шаблон-компонент маппинга, включает его в шаблон индекса и показывает итоговые настройки и маппинг, которые применились бы к заданному имени индекса, не создавая индекс.
Когда использовать
Когда новые индексы создаются с неверным маппингом или числом шардов (взрыв dynamic mapping, text вместо keyword), и перед выкаткой изменения шаблона.
Внимание
Шаблон применяется только к вновь создаваемым индексам; маппинг существующих индексов не меняется (см. reindex-alias-swap). Если два шаблона соответствуют одному шаблону имён, используется только шаблон с наивысшим priority; они не объединяются. dynamic: strict отклоняет документы с неопределёнными полями; если приложение отправит новое поле, индексация завершится ошибкой.