链路追踪和elasticsearch整合
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package org.nl;
|
||||
|
||||
import org.apache.http.HttpHost;
|
||||
import org.elasticsearch.action.search.SearchRequest;
|
||||
import org.elasticsearch.action.search.SearchResponse;
|
||||
import org.elasticsearch.client.RequestOptions;
|
||||
import org.elasticsearch.client.RestClient;
|
||||
import org.elasticsearch.client.RestHighLevelClient;
|
||||
import org.elasticsearch.index.query.QueryBuilders;
|
||||
import org.elasticsearch.rest.RestStatus;
|
||||
import org.elasticsearch.search.SearchHit;
|
||||
import org.elasticsearch.search.SearchHits;
|
||||
import org.elasticsearch.search.builder.SearchSourceBuilder;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author ldjun
|
||||
* @version 1.0
|
||||
* @date 2023年02月06日 18:49
|
||||
* @desc desc
|
||||
*/
|
||||
@Configuration
|
||||
public class ElasticSearchClientConfig {
|
||||
|
||||
|
||||
//配置RestHighLevelClient依赖到spring容器中待用
|
||||
@Bean
|
||||
public RestHighLevelClient restHighLevelClient() {
|
||||
RestHighLevelClient client = new RestHighLevelClient(
|
||||
RestClient.builder(
|
||||
//绑定本机,端口,协议,如果是ES集群,就配置多个
|
||||
new HttpHost("127.0.0.1", 9200, "http")));
|
||||
|
||||
return client;
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws IOException {
|
||||
// 指定ip 端口
|
||||
HttpHost[] httpHosts = {new HttpHost("47.111.78.178", 27017, "http")};
|
||||
RestHighLevelClient restHighLevelClient = new RestHighLevelClient(RestClient.builder(httpHosts));
|
||||
|
||||
SearchRequest searchRequest = new SearchRequest("logs-2023-02-06");
|
||||
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
|
||||
sourceBuilder.query(QueryBuilders.matchQuery("_id", "HzAeJoYBlkwLvExN1Vg4"));
|
||||
searchRequest.source(sourceBuilder);
|
||||
SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
|
||||
RestStatus restStatus = searchResponse.status();
|
||||
System.out.println(restStatus);
|
||||
if (restStatus == RestStatus.OK) {
|
||||
SearchHits searchHits = searchResponse.getHits();
|
||||
for (SearchHit searchHit: searchHits) {
|
||||
System.out.println("id:" + searchHit.getId());
|
||||
System.out.println("index:" + searchHit.getIndex());
|
||||
System.out.println("score:" + searchHit.getScore());
|
||||
Map<String, Object> map = searchHit.getSourceAsMap();
|
||||
System.out.println("name:" + (String) map.get("name"));
|
||||
System.out.println("city:" + (String) map.get("city"));
|
||||
System.out.println("price:" + (Double) map.get("price"));
|
||||
}
|
||||
}
|
||||
restHighLevelClient.close();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user