_cat/templates 是什么
_cat/templates 列出集群中的索引模板及其匹配规则与优先级,用来排查新建索引用错模板、模板冲突与旧版遗留模板。关键列有 name、index_patterns、order、version、composed_of。它给的是概览,要看模板体还得用 GET /_index_template/<name>。组合式模板与旧版模板的优先级机制不同,冲突时高优先级覆盖低优先级,光看 _cat 的输出很难判断索引最终生效的设置。
基本信息
| 接口 | GET /_cat/templates?v&s=order:desc,index_patterns |
|---|---|
| 关键列 | name、index_patterns、order、version、composed_of |
| 查看模板体 | GET /_index_template/<name> |
| 新旧机制 | 旧版 legacy 模板与组合式模板可以并存 |
| 验证手段 | GET <index>/_settings 与 _mapping 看最终生效值 |
典型使用场景
- 排查用错模板:新索引的分片数或 mapping 不符合预期时
- 整理模板冲突:多个模板匹配同一模式,按优先级判断谁生效
- 清理遗留:找出仍依赖旧版模板的索引,评估迁移计划
- 变更前评估:改模板前先看清有哪些索引模式会受影响
- 巡检规范:统一模板命名与版本字段,降低维护成本
查看与验证
查看与验证
GET /_cat/templates?v&s=order:desc,index_patterns # 按优先级排序查看
GET /_index_template/logs_template # 查看模板完整内容
GET /logs-2026.10.01/_settings # 核对最终生效的分片与刷新设置
GET /logs-2026.10.01/_mapping # 核对最终生效的字段定义输出的列读法
| 列 | 含义 | 注意 |
|---|---|---|
| name | 模板名 | 命名规范有助于排查冲突 |
| index_patterns | 匹配的索引模式 | 模式重叠是冲突根源 |
| order | 优先级 | 旧版模板中数值越大越优先 |
| version | 模板版本 | 自行维护,用于识别新旧 |
| composed_of | 引用的组件模板 | 组合式模板才有这一列 |
名字相似的多个模板同时匹配一个索引时,从 _cat/templates 很难看出最终效果,必须 GET 该索引的 _settings 与 _mapping 核对实际生效值。
旧版模板与组合式模板可以并存,清理时要确认没有索引仍依赖旧版模板,直接删除可能让后续新建索引丢掉分片与 mapping 设置。