我发现有这样的配置application.conf
:
# If enabled, log SQL statements being executed.
db.default.logStatements=true
我已启用它,但我找不到任何记录执行 sqls 的日志文件。
我在哪里可以找到它,或者我错过了什么?
我发现有这样的配置application.conf
:
# If enabled, log SQL statements being executed.
db.default.logStatements=true
我已启用它,但我找不到任何记录执行 sqls 的日志文件。
我在哪里可以找到它,或者我错过了什么?
确保:
db.default.logStatements=true
这个配置实际上是bonecp的设置,它是play2中使用的连接池
将自定义记录器配置添加到conf/logger.xml
.
内容可能是:
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level - %msg%n</pattern>
</encoder>
</appender>
<logger name="com.jolbox.bonecp" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
<logger name="play" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
<logger name="application" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
</configuration>
是com.jlbox.bonecp
,bonecp
和是 play2 play
。application
注释记录器设置application.conf
:
# Logger
# ~~~~~
# You can also configure logback (http://logback.qos.ch/), by providing a logger.xml file in the conf directory .
# Root logger:
# logger.root=ERROR
# Logger used by the framework:
# logger.play=INFO
# Logger provided to your application:
# logger.application=DEBUG
重新开始播放,您将看到所有执行的 SQL(包括参数值)。
据我所知,这不再适用于 Play 2.4.2。默认连接池引擎已更改为 HikariCP。
将此添加到您的 application.conf 并按照以下说明进行操作。事情应该有效:
应用程序.conf
db.default.pool = "bonecp"
db.default.bonecp.logStatements=true
conf/logger.xml 将自定义记录器配置添加到 conf/logger.xml。
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level - %msg%n</pattern>
</encoder>
</appender>
<logger name="com.jolbox.bonecp" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
<logger name="play" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
<logger name="application" level="DEBUG">
<appender-ref ref="STDOUT" />
</logger>
</configuration>
只需将以下内容添加到 application.conf (在 play 2.2.1 中对我有用)
db.default.logStatements=true
logger.com.jolbox.bonecp=DEBUG
对于 HikariCP(即从 Play 2.4 开始),请参阅https://github.com/brettwooldridge/HikariCP/wiki/JDBC-Logging:
HikariCP 目前并不固有地包含 JDBC 日志记录。这是一个有意识的决定,而不是疏忽或未开发的未来路线图项目。几乎所有主要数据库都有一个能够自行登录的 JDBC 驱动程序。对于那些不这样做的人,log4jdbc-log4j2 是一个不错的选择。
此 wiki 页面记录了如何为常用数据库以及 log4jdbc-log4j2 启用日志记录。
对于 log4jdbc-log4j2:添加"org.bgee.log4jdbc-log4j2" % "log4jdbc-log4j2-jdbc4.1" % "1.16"
到libraryDependencies
; 配置在https://code.google.com/archive/p/log4jdbc-log4j2/中描述。