我发现application.conf
中有这样的配置:
# If enabled, log SQL statements being executed.
db.default.logStatements=true
我启用了它,但是我找不到任何记录执行的sqls的日志文件。
我在哪里可以找到它,或者我错过了什么?
答案 0 :(得分:57)
确保:
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
,play
和application
适用于播放2。
在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(包括参数值)。
答案 1 :(得分:5)
根据我的判断,这不再适用于Play 2.4.2。默认连接池引擎已更改为HikariCP。
将此添加到您的application.conf并按照以下说明操作。事情应该有效:
<强> Application.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>
答案 2 :(得分:3)
只需将以下内容添加到application.conf(适用于我在游戏2.2.1中)
db.default.logStatements=true
logger.com.jolbox.bonecp=DEBUG
答案 3 :(得分:1)
对于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/描述。