searchisko / elasticsearch-river-sysinfo

River component for elasticsearch which collects system informations from ES cluster in defined intervals and stores them into search indices, so can be analyzed later.
Apache License 2.0
10 stars 1 forks source link

REST Client uses deprecated API to call Nodes Info end point #13

Closed lukas-vlcek closed 9 years ago

lukas-vlcek commented 9 years ago

Nodes Info API supported multiple REST end points: _cluster/nodes and _nodes. This commit https://github.com/elastic/elasticsearch/commit/ad50afbec8c2d619a33fdb591361d5d2ad4c766d dropped the _cluster/nodes end point in Elasticsearch.

However, we are using it in REST client which is giving an exception:

[ERROR][org.jboss.elasticsearch.river.sysinfo.SysinfoIndexer] Failed to process Sysinfo search-cluster_nodes_info indexer due: Failed ES REST API call. HTTP error code: 400 Response body: {"error":"ElasticsearchIllegalArgumentException[No feature for name [nodes]]","status":400}
java.io.IOException: Failed ES REST API call. HTTP error code: 400 Response body: {"error":"ElasticsearchIllegalArgumentException[No feature for name [nodes]]","status":400}
        at org.jboss.elasticsearch.river.sysinfo.SourceClientREST.performRESTCall(SourceClientREST.java:293)
        at org.jboss.elasticsearch.river.sysinfo.SourceClientREST.readClusterNodesInfoInfo(SourceClientREST.java:175)
        at org.jboss.elasticsearch.river.sysinfo.SourceClientBase.readSysinfoValue(SourceClientBase.java:29)
        at org.jboss.elasticsearch.river.sysinfo.SysinfoIndexer.processLoopTask(SysinfoIndexer.java:118)
        at org.jboss.elasticsearch.river.sysinfo.SysinfoIndexer.run(SysinfoIndexer.java:78)