我正在尝试使用Jest检索索引列表,但我得到了:
Stats statistics = new Stats.Builder().build();
result = client.execute(statistics);
如何从结果中检索索引列表?我是否必须使用除Stats之外的其他内容? 如果有人可以向我展示Jest的详细文档,这也会有所帮助。基础知识确实有很好的记录,但是对于不同类型的构建者,我现在真的迷失了。
答案 0 :(得分:4)
Get Aliases将为您提供节点上索引的所有别名。
答案 1 :(得分:3)
可以简单地将浏览器导航到以下URL以获取ElasticSearch集群上的索引。
的http:// elasticsearch.company.com / _aliases
这将返回JSON中的索引及其别名数组。这是一个例子:
{
"compute-devzone1": { },
"compute-den2": { },
"compute-den1": { },
...
}
要使用Jest获取索引列表,请使用此代码...
HttpClientConfig config;
JestClientFactory factory;
JestClient client;
GetAliases aliases;
JestResult result;
String json;
config = new HttpClientConfig.
Builder("http://elasticsearch.company.com").
build();
aliases = new GetAliases.
Builder().
build();
factory = new JestClientFactory();
factory.setHttpClientConfig(config);
client = factory.getObject();
result = client.execute(aliases);
json = result.getJsonString();
使用您最喜欢的JSON处理器从json
中提取索引。
答案 2 :(得分:1)
使用:
JestResult result = elasticSearchClient.execute(new Cat.IndicesBuilder().build());
这将返回JSON响应,就像curl -XGET "localhost:9200/_cat/indices?format=json"