我使用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数据elasticsearch似乎没有记录查询。
如果您使用的是spring boot,您可以在应用程序中设置以下内容。属性:
logging.level.org.elasticsearch.index.search.slowlog.query=INFO
spring.data.elasticsearch.properties.index.search.slowlog.threshold.query.info=1ms
这是一个相当古老的,但我仍然想分享的解决方案,为我工作。要记录通过存储库执行的Spring数据Elasticsearch查询,需要为包org启用日志记录。springframework。数据elasticsearch。核心* ,例如:
logging:
level:
org:
springframework:
data:
elasticsearch:
core: DEBUG
之后,查询将出现在日志中:
{
"from" : 0,
"size" : 1,
"query" : {
"bool" : {
"should" : [ {
"query_string" : {
"query" : "John Doe",
"fields" : [ "entityName" ],
"default_operator" : "and"
}
}, {
"query_string" : {
"query" : "John Doe",
"fields" : [ "alias" ],
"default_operator" : "and"
}
} ]
}
},
"post_filter" : {
"bool" : { }
}
}
人们会期待一个类似于JPA的优雅解决方案,但它似乎并不简单存在。
使用Spring Boot 1.4.0和Spring Data Elasticsearch 1.7.3进行了测试。
在翻阅了spring数据代码后,我发现了这个名为“tracer”(名称不是很独特)的有用的小记录器
通过设置以下application.properties
logging.level.tracer=TRACE
它将打印出请求的完整curl语句以及来自Elasticsearch的完整JSON响应。
问题内容: 我使用spring-data-elasticsearch框架从elasticsearch服务器获取查询结果,如下所示的Java代码: 虽然我怎么知道发送到elasticssearch服务器的原始http查询?我如何启用日志记录,我尝试添加log4j,但是似乎spring-data- elasticsearch没有记录查询。 问题答案: 我没有针对Spring Data Elastics
我已经搜索了一段时间,如何记录在“laravel/framework”中执行的sql查询:“5.0.*” 但是我发现的一切都是关于版本4的,还没有找到任何类似于这样的5.0的工作解决方案:在Laravel3/4中执行查询,以及如何在Laravel5中执行查询?DB::getQueryLog返回空数组和http://laravelsnippets.com/snippets/log-db-querie
问题内容: 如何启用MySQL功能,该功能记录从客户端收到的每个SQL查询语句以及该查询语句提交的时间?我可以在phpmyadmin或NaviCat中做到吗?如何分析日志? 问题答案: 首先, 请记住,此日志文件在繁忙的服务器上可能会变得非常大。 对于mysql <5.1.29: 要启用查询日志,把这个在节 另外,从MySQL控制台启用它 见http://dev.mysql.com/doc/ref
我想调试ffmpeg。我添加以下代码来打印日志: 或 但它不能工作。没有任何调试信息。 然后启用调试生成选项: 它不能工作。 我确信我添加跟踪的地方会被执行。 我只想打印一些简单的信息,怎么做?
我正在为日志创建一个Spring Bootjar。我在我的主要spring boot项目中添加了这个依赖项。我可以在主项目的控制台中获取日志。但是没有登录到文件中。 我在文件中添加了以下application.yml 谁能帮我一下吗。提前谢谢!
问题内容: 我正在使用Oracle 11g标准版。 我想将用户正在执行的所有SQL查询记录到表中。 如何才能做到这一点? 问题答案: 如果您使用的是现代版本的数据库(9i或更高版本),并且您拥有企业版许可证,则可以使用细粒度审核。它使我们能够通过已定义的策略以非常低的粒度审核用户查询。 要捕获SQL文本并绑定变量,您需要在添加FGA策略时适当设置AUDIT_TRAIL参数。 了解更多。 “我使用的