【问题标题】:How to search Elasticsearch index list by index name (wild card)如何通过索引名称(通配符)搜索 Elasticsearch 索引列表
【发布时间】:2018-05-14 14:20:25
【问题描述】:

我的 Elasticsearch 实例,有大量的索引,有些是日期后缀的,有些不是。

我知道GET _cat/indices 可以给我所有的索引,但是太多了。

有什么方法可以获取索引名称中以call- 开头的所有索引列表?

例如我想要的结果是:(搜索索引本身,而不是索引文档)

call-staging-201804
call-staging-201805
call-dev-201804
call-dev-201805

谢谢。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    是的,您可以使用multiple indicies 查询

    大多数引用索引参数的 API 支持跨 多个索引,使用简单的 test1,test2,test3 表示法(或 _all 表示 所有指数)。它还支持通配符,例如:test* 或 test 或 tet 或 test,以及“排除”(-) 的能力,例如: test*,-test3.

    curl -XGET 'http://localhost:9200/index1,index2/_search?q=search'
    curl -XGET 'http://localhost:9200/call-*/_search?q=search'
    curl -XGET 'http://localhost:9200/_all/_search?q=search'
    

    但要小心,因为这需要更多时间

    【讨论】:

    • 对不起,我的意思是我搜索索引名称本身。抱歉,会更新我的问题
    • @Xin 得到你想要的。我建议您获取所有内容,也许还可以缓存。否则解释用例
    猜你喜欢
    • 2012-08-27
    • 2015-03-15
    • 1970-01-01
    • 2017-10-09
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 2013-07-28
    相关资源
    最近更新 更多