elasticsearch 如何获取在Kibana中创建的索引列表?,elasticsearch,kibana,elasticsearch,Kibana" /> elasticsearch 如何获取在Kibana中创建的索引列表?,elasticsearch,kibana,elasticsearch,Kibana" />

elasticsearch 如何获取在Kibana中创建的索引列表?

elasticsearch 如何获取在Kibana中创建的索引列表?,elasticsearch,kibana,elasticsearch,Kibana,我能够从Elasticsearch检索索引,并在Java中以编程方式在Kibana中注册相应的索引模式。现在我想得到已经在Kibana中创建的索引模式列表,这样我就可以对照Elasticsearch中的索引列表进行交叉检查,从而避免在Kibana中再次创建它们 是否有从Kibana获取索引模式列表的API -- 用于从Elasticsearch获取索引列表的API: http://{hostname}:{port}/\u别名 用于在Kibana中创建索引模式的API: http://{ho

我能够从Elasticsearch检索索引,并在Java中以编程方式在Kibana中注册相应的索引模式。现在我想得到已经在Kibana中创建的索引模式列表,这样我就可以对照Elasticsearch中的索引列表进行交叉检查,从而避免在Kibana中再次创建它们

是否有从Kibana获取索引模式列表的API

--

用于从Elasticsearch获取索引列表的API:

http://{hostname}:{port}/\u别名

用于在Kibana中创建索引模式的API:

http://{hostname}:{port}/{kibana实例Id}/index pattern/{index pattern title}

恐怕它目前还不可用,您可以使用api公开在
Kibana
中创建的所有索引


但请记住,只有在ES中已经创建索引的情况下,才能在
Kibana
中创建索引。所以也许你可以考虑检查你的ES索引,不管你是否已经创建了一个现有的索引,如果没有创建索引。如果索引不在索引列表中,这意味着您不可能继续在
Kibana
中创建索引

您可以从API中列出它们:


获取_cat/index/.marvel*
获取_cat/index/.kibana

使用下一个查询: GET/.kibana/index pattern/_search

我查看了kibana(5.5版)控制台,通过执行此查询可以获得相同的结果

curl -X POST -H 'Content-Type: application/json' \
 -d '{"query":{"match_all":{}},"size":10000}'  \
 http://$ES_HOST/.kibana/index-pattern/_search/\?stored_fields\=""
请注意,向上面的url发出GET请求(如下所示)也将返回字段,但它们仅限于10个

curl http://$ES_HOST/.kibana/index-pattern/_search/\?stored_fields\=""
此查询有效(从kibana开发控制台):

kibana 7.x的工程:

  • 获取所有索引模式
curl-s'http://192.168.100.100:5601/api/saved_objects/_find?fields=title&fields=type&per_page=10000&type=index-模式'
#使用jq获取索引模式名称:
旋度http://192.168.100.100:5601/api/saved_objects/_find?fields=title&fields=type&per_page=10000&type=index-模式“|jq”。保存的_对象[]。属性。标题”
“宾客服务*
“活动2020*”
“银行驾驶舱*”
“cros-n-wa*”
“反欺诈20*”
“yhb节点*”
“公共服务节点*”
  • 删除特定的索引模式
curl-XDELETE-H'kbn xsrf:“”http://192.168.100.100:5601/api/saved_objects/index-图案/970070d0-f252-11ea-b492-31ec85db4535'
-H'kbn xsrf:”
必须设置,否则API将投诉
{“statusCode”:400,“错误”:“错误请求”,“消息”:“请求必须包含kbn xsrf头”。}


使用
jq-r
获得不带qoute的值。

谢谢Kulasangar。这就是我现在正在做的。我正在检查ES中的索引,并且只使用与模式的可能列表(内存中)中的项匹配的索引。问题是,下次我重复这个过程时,我不想再在Kibana中创建那些已经创建的索引模式。@lex你想做的是绝对正确的。让我们期待未来的改进。如果我的答案有助于你投票,如果它符合你的要求,请将它标记为答案,这样它也可以帮助其他人。谢谢使用“GET”cat/index/.kibana会给我“绿色打开”。kibana 1 0 2 0 6.6kb 6.6kb``似乎正在返回模式。。。谢谢在进一步的测试中,当我从Kibana删除一个索引模式时,API没有返回正确的结果。你是如何删除索引模式的?使用Kibana中的UI。你说查询没有返回正确的结果,你是说你得到了以前删除的索引模式吗?
GET .kibana/_search?size=10000
{
  "_source": ["index-pattern.title"],
  "query": {
    "term": {
      "type": "index-pattern"
    }
  }
}