I'm trying to retrieve a list of indices using Jest, but I just got as far as:
Stats statistics = new Stats.Builder().build();
result = client.execute(statistics);
How can i retrieve the list of indices from the result? Do I have to use something else than Stats? It would also help if someone could show me a detailed documentation of Jest. The basics are really well documented, but with the different kinds of builders I'm really lost at the moment.
Get Aliases will give you all the aliases for the indices on a node.
One can simply navigate a browser to the following URL to get the indexes available on an ElasticSearch cluster.
http://elasticsearch.company.com/_aliases
This will return an array of indexes and their aliases in JSON. Here's an example:
{
"compute-devzone1": { },
"compute-den2": { },
"compute-den1": { },
...
}
To get the list of indexes with Jest, use this code...
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();
Use your favorite JSON processor to extract the indexes from json
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With