java中RestHighLevelClient 获取端口配置等基本信息

示例代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@CrossOrigin(origins = "*", maxAge = 3600)
    @RequestMapping(value = {"/v1/es_info"}, method = {POST})
    public ResponseEntity<String> queryESInfo(@RequestBody QueryAlarmRequestInfo body)
            throws Exception {
        StringBuilder s = new StringBuilder();
        try {
            RestHighLevelClient client = ElasticSearchUtil.getElasticsearchRestClient().rest();
 
            MainResponse response = client.info(RequestOptions.DEFAULT);
            String esVersion = response.getVersion().getNumber();
            s.append("Elasticsearch Version: " + esVersion + "\n");
            // 打印 Elasticsearch 版本和其他信息
            String clusterName = response.getClusterName().toString();
            String nodeName = response.getNodeName();
            s.append("Cluster name: " + clusterName + "\n");
            s.append("Node name: " + nodeName + "\n");
            // 从RestHighLevelClient获取RestClient
            RestClient restClient = client.getLowLevelClient();
            // 获取已配置的HttpHost信息
            HttpHost[] hosts = restClient.getNodes().stream()
                    .map(node -> node.getHost())
                    .toArray(HttpHost[]::new);
            // 打印每个HttpHost的信息
            for (HttpHost host : hosts) {
                s.append("Host: " + host.getHostName() + "\n");
                s.append("Port: " + host.getPort() + "\n");
                s.append("Scheme: " + host.getSchemeName() + "\n");
            }
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException();
        }
        return ResponseModel.success(s.toString());
    }

  

posted @   bonelee  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
历史上的今天:
2019-07-03 AI demo framework
2019-07-03 spark-submit python egg 解决三方件依赖问题
2019-07-03 怎样制作一个 Python Egg
2018-07-03 scrapy 6023 telnet查看爬虫引擎相关状态
2017-07-03 深入理解groupByKey、reduceByKey区别——本质就是一个local machine的reduce操作
点击右上角即可分享
微信分享提示