java - 如何在 Spring-data-elasticsearch 中启用查询日志记录

标签 java elasticsearch spring-data-elasticsearch

我使用spring-data-elasticsearch框架从elasticsearch服务器获取查询结果,java代码如下:

SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withQuery(matchAllQuery()).withSearchType(SearchType.COUNT)
.addAggregation(new MinBuilder("min_createDate").field("createDate"))
.build();

List<Entity> list = template.queryForList(searchQuery, Entity.class);

虽然我怎么知道发送到 elasticssearch 服务器的原始 http 查询? 我如何启用日志记录,我尝试添加 log4j,但似乎 spring-data-elasticsearch 没有记录查询。

最佳答案

在深入研究 spring 数据代码后,我发现了这个有用的小记录器,称为“tracer”(名称不是很独特)

通过在 application.properties 中设置以下内容

logging.level.tracer=TRACE

它将为请求打印出完整的 curl 语句以及来自 Elasticsearch 的完整 JSON 响应。

关于java - 如何在 Spring-data-elasticsearch 中启用查询日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30691884/

相关文章:

java - 如何通过改造对象中的对象来解析 json 数据?

php - 如何制作分页elasticsearch?

regex - 正则表达式在kibana上搜索数组元素

elasticsearch - 使用一个索引作为另一个索引的术语来源

java - Elasticsearch : "fuzzy_like_this_field" filter query is not working

spring-data-elasticsearch - 在 ElasticSearch 中获取错误

java - 连接到需要使用 Java 进行身份验证的远程 URL

java - Android 项目 - RuntimeException ,由 Null Pointer Exception 引起

elasticsearch - 是否可以使用 org.springframework.data.elasticsearch.core.ReactiveElasticsearchTemplate 删除索引?

java - 测试静态方法类必须更改为单例以进行 JUnit 测试