微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Java Rest高级客户端的Elasticsearch Node IP地址和其他详细信息

如何解决使用Java Rest高级客户端的Elasticsearch Node IP地址和其他详细信息

我们如何使用Java高级休息客户端获取elasticseacrh的节点详细信息。 我们可以使用 GET / _cat / nodes 获取KIbana中的节点详细信息。 我想了解如何使用高级Rest Client获得相同的详细信息,我需要节点的IP地址以及是否使用其主节点。

解决方法

看起来JHLRC没有获得_cat/nodes API的API,但是可以使用JHLRC中可用的低级客户端轻松获得它,如下面的代码所示

private void getNodesAPI(RestHighLevelClient restHighLevelClient) throws IOException {
        RestClient lowLevelClient = restHighLevelClient.getLowLevelClient();
        Request request = new Request(
                "GET","/_cat/nodes?v");
        Response response = lowLevelClient.performRequest(request);
        if (response.getStatusLine().getStatusCode() == 200) {
            System.out.println("resp: \n"+ EntityUtils.toString(response.getEntity()));
        }
    }

上面的代码可以在本地运行,下面的是控制台上的O / P

ip        heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
127.0.0.1           48          99  21    2.59    1.93     1.92 *    opster

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。