Component template ile index template kur ve sonucu simüle et
ElasticsearchIndex Yaşam DöngüsüKomut
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" } }
}
# Index olusmadan once uygulanacak nihai ayar ve mapping'i gor:
POST _index_template/_simulate_index/app-events-000001
GET _cat/templates?v&s=nameNe yapar?
Tekrar kullanılabilir bir mapping component template'i tanımlar, bunu bir index template'te birleştirir ve belirli bir index adı için uygulanacak nihai ayarları ve mapping'i index oluşturmadan gösterir.
Ne zaman kullanılır?
Yeni index'lerin yanlış mapping veya shard sayısıyla açıldığı (dinamik mapping patlaması, keyword yerine text) durumlarda ve template değişikliğini canlıya almadan önce.
Dikkat
Template yalnızca yeni oluşturulan index'lere uygulanır; mevcut index'lerin mapping'i değişmez (bkz. reindex-alias-swap). Aynı pattern'e uyan iki template varsa yalnızca en yüksek priority'li olan kullanılır; birleştirme yapılmaz. dynamic: strict tanımsız alan içeren belgeleri reddeder; uygulama yeni alan gönderiyorsa indexing hata alır.