You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Elasticsearch索引模板的创建时间

Elasticsearch获取索引模板创建时间的方法

GET _cat/templates接口本身就不返回模板创建时间字段,不用在这个接口上反复调试,按你用的ES版本选下面的方法就行:

7.x及以上版本:直接调用模板查询接口读取内置元数据

从7.x版本开始,ES会自动给所有新建的索引模板记录创建时间戳,存在模板的元数据字段里,直接查就能拿到:

  • 查7.8版本之后主推的组合索引模板(Composable Index Template):
    调用GET _index_template/*拉取全量组合模板,返回结果里每个模板对应的index_template._meta.create_time字段就是毫秒级Unix时间戳格式的创建时间,按字段值升序排第一个就是最早创建的模板。
    单模板查询的返回结构参考:
    {
      "index_templates": [
        {
          "name": "business-logs-template",
          "index_template": {
            "index_patterns": ["biz-logs-*"],
            "_meta": {
              "create_time": 1698724800000,
              "description": "业务日志索引模板"
            }
          }
        }
      ]
    }
    
  • 查旧版遗留索引模板(Legacy Template):
    调用GET _template/*拉取全量旧模板,每个模板下的_meta.create_time字段就是对应创建时间。

6.x及更早版本:无内置创建时间字段的回溯方案

6.x及更早版本不会自动记录模板创建时间,没有直接查询的接口,只能通过两种方式确认创建顺序:

  • 如果集群开启了审计日志,直接搜索create_index_template类型的事件日志,日志里的事件时间就是模板的准确创建时间
  • 如果没开审计日志,可以去主节点的data/cluster_state持久化目录下找集群状态文件,文件里记录的模板条目更新时间可以近似作为创建时间,注意如果模板后续做过修改,这个时间会同步更新,无法对应初始创建时间。

注意事项

  • 不要用模板返回的version字段判断创建先后,这个字段是用户创建/修改模板时手动传入的自定义值,和实际创建时间没有对应关系
  • 如果模板被人工编辑过_meta字段,create_time可能被篡改,这种场景下要以审计日志的记录为准

内容的提问来源于stack exchange,提问作者Sagar Vaghela

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 09:54:22