NEST如何根据匹配模式(索引别名)获取所有匹配的索引

发布于 2022-09-12 04:25:40 字数 1073 浏览 22 评论 0

背景:
构造一个ESClient,通过一个通配符表达式去获取所有匹配的索引名称。
IndexMatchMode是一个简单的enum,用来判断当前的匹配模式是通配符的还是读索引的。
indexPattern是通配符模式的表达式(logstash-*模式的字符串),IndexReadAlias是读索引的
问题:
应该使用哪个接口将matchMode作为参数去获取所有的索引

public async Task<List<string>> GetMatchedIndexNamesAsync()
        {
            var client = RelatedCluster.BuildClient(true);
            var indexNamesList = new List<string>();
            var matchMode = string.Empty;
            switch (IndexMatchMode)
            {
                case IndexMatchMode.ByPattern:
                    matchMode = IndexPattern;
                    break;
                case IndexMatchMode.ByAlias:
                    matchMode = IndexReadAlias;
                    break;
            }
            //这一步瞎写的
            var result = await client.GetAsync(indexMatchMode);
            return indexNamesList;
        }

效果相当于Kibana结果截图
L$L\[@0T$XUS}K`][HWR(OTS.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文