Hi,
I am using ES 5.1.1. I had only one elasticsearch node. And I was able to search/view data like below:
1) http://192.168.10.10:9200/myIndex/_search
2) Settings settings = Settings.builder().put("cluster.name", "my-application").build();
TransportClient client = new PreBuiltTransportClient(settings)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getLocalHost(),9300));
String json = "{"query":{"match_all":{}}}";
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
SearchModule searchModule = new SearchModule(Settings.EMPTY, false, Collections.emptyList());
try (XContentParser parser = XContentFactory.xContent(jsonDistinctUrls).createParser(json)) {
QueryParseContext context = new QueryParseContext(searchModule.getQueryParserRegistry(), parser,
new ParseFieldMatcher(true));
searchSourceBuilder.parseXContent(context, searchModule.getAggregatorParsers(),
searchModule.getSuggesters(), searchModule.getSearchExtRegistry());
}
SearchRequestBuilder searchRequestBuilder = newSearchRequestBuilder(client, SearchAction.INSTANCE);
SearchResponse srDistinctUrls = searchRequestBuilder.setIndices(indexName).setSource(searchSourceBilder).execute().actionGet();
But, now I am using two nodes for elasticsearch.
My Logstash config file output looks like below:
output {
elasticsearch {
action => "index"
hosts => ["192.168.10.10:9200","192.168.20.20:9200"]
index => "myIndex"
}
}
What code changes I need to do now?