springboot配置elasticsearch检索语句日志

解决 Spring Data Elasticsearch log 打印日志问题

学习elasticsearch的时候,想要查看elasticsearch发送的DSL语句,类似MyBatis可以在idea的控制台上输出Mysql语句,可以添加如下配置

//  2.4.x 以下版本
logging.level.org.springframework.data.elasticsearch.core=DEBUG
注意: 以下 Spring boot 版本是 2.4.x,其实 2.2.x 以上都可以使用这种方法

一、配置RestHighLevelClient

import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.elasticsearch.client.ClientConfiguration;
import org.springframework.data.elasticsearch.client.RestClients;

@Configuration
public class EsConfig {

	// @Bean
	// public RestHighLevelClient restHighLevelClient() {
	// 	return new RestHighLevelClient(
	// 			RestClient.builder(
	// 					new HttpHost("192.168.3.150", 9200, "http")));
	// }
	
	// 将RestHighLevelClient 修改成这种方式
	@Bean(destroyMethod = "close")
	public RestHighLevelClient restClient() {

		ClientConfiguration clientConfiguration = ClientConfiguration.builder()
				.connectedTo("192.168.3.150:9200")
				.build();

		RestHighLevelClient client = RestClients.create(clientConfiguration).rest();
		return client;
	}
}

二、在application.yml添加日志输出

logging:
  level:
    org.springframework.data.elasticsearch.client.WIRE: TRACE

三、效果

在这里插入图片描述

参考资料: https://juejin.cn/post/6994756760363859999

你可能感兴趣的:(ES,spring,java)