With Play 2.4.0 Anorm got moved to an external package and logging got changed to LogBack (http://logback.qos.ch)
All well and good but nowhere are the class/package
Anorm doesn't log anything (and doesn't use logback), but 'output' is plain JDBC, so you can configure debug on your connection pool.
EDIT:
The debug utility from my framework Acolyte can be used to print/log the JDBC statement that would have been executed with the connection.
If you have SQL"SELECT * FROM Test WHERE id = $id"
, you can debug it as following.
<!-- language: scala -->
import acolyte.jdbc.AcolyteDSL
AcolyteDSL.debuging() { implicit dcon =>
SQL"SELECT * FROM Test WHERE id = $id"
// just print the prepared statement
// with parameters bound
}
// really execute,
// the check the real ResultSet
SQL"SELECT * FROM Test WHERE id = $id"
Acolyte is available on Maven Central.
You can intercept calls going thru JDBC driver using
log4jdbc
I have used successfully with JPA/hibernate and Hikary on Play 2.4, the setup should be identically since this influences the JDBC layer.
Add the library to your build.sbt:
"org.bgee.log4jdbc-log4j2" % "log4jdbc-log4j2-jdbc4" % "1.12"
Adjust the config. Add log4jdbc, the log4jdbc automatically detects the underlying driver from the string: mysql. If you are using an obscure JDBC driver, you can configure it using config options - see docs below.
db.default.url="jdbc:log4jdbc:mysql://localhost/......"
db.default.driver=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
Example of my logback.xml, relevant part:
<logger name="log4jdbc.log4j2" level="ERROR">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</logger>
<logger name="jdbc.sqlonly" level="INFO" >
<appender-ref ref="DBFILE" />
</logger>
<appender name="DBFILE" class="ch.qos.logback.core.FileAppender">
<file>${application.home}/logs/sql.log</file>
<encoder>
<pattern>%date - [%level] - from %logger in %thread %n%message%n%xException%n</pattern>
</encoder>
</appender>
And, finally the log4jdbc.log4j2.properties (create it in the conf directory which is on the class path):
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
More docs: https://code.google.com/p/log4jdbc-log4j2/
Let me know if this works for you