如何通过单行命令查询Elasticsearch所有索引的更新时间(而非创建时间)
如何通过单行命令查询Elasticsearch所有索引的更新时间(而非创建时间)
嘿,这个问题我刚好碰到过!你已经知道怎么用_cat/indices查索引创建时间了,那查更新时间其实只需要调整命令里的字段参数就行,给你两个适配不同Elasticsearch版本的单行方案:
适用于较新版本的Elasticsearch(7.x及以上)
直接使用last_updated字段,这个字段会明确显示索引最后一次有数据写入、更新或删除操作的时间:
curl 'http://localhost:9200/_cat/indices?v&h=index,last_updated'
适用于旧版本的Elasticsearch
如果你的ES版本不支持last_updated字段,可以用primaries.last_activity_time来替代,它会返回索引主分片最后有活动的时间(包含数据更新操作):
curl 'http://localhost:9200/_cat/indices?v&h=index,primaries.last_activity_time'
补充说明一下:v参数是让返回结果以易读的表格形式展示,h参数用来指定你需要返回的字段,这里我们只保留了索引名和更新时间相关字段,避免冗余信息。
内容来源于stack exchange




