在油滑3.1.0(我想在3.0),你可以做出非常酷的SQL調試:
[DEBUG] - slick.jdbc.JdbcBackend.statement - Preparing statement: select "id", "email", "name", "password" from "users" where ("email" = '[email protected]') and ("password" = ext.crypt('123456',"password"))
[DEBUG] - slick.jdbc.JdbcBackend.benchmark - Execution of prepared statement took 56ms
[DEBUG] - slick.jdbc.StatementInvoker.result - /----------------------+---------------+-------+----------------------\
[DEBUG] - slick.jdbc.StatementInvoker.result - | 1 | 2 | 3 | 4 |
[DEBUG] - slick.jdbc.StatementInvoker.result - | id | email | name | password |
[DEBUG] - slick.jdbc.StatementInvoker.result - |----------------------+---------------+-------+----------------------|
[DEBUG] - slick.jdbc.StatementInvoker.result - | 4fe6e5c3-af74-40f... | [email protected] | petya | $2a$10$WyOrBy7p48... |
[DEBUG] - slick.jdbc.StatementInvoker.result - \----------------------+---------------+-------+----------------------/
我只使用的logback配置日誌,所以它很容易打開:
<logger name="slick" level="INFO" />
<logger name="slick.jdbc" level="DEBUG" />
如果你在* nix「tail -f /path/to/query.log」應該做的伎倆,不? – virtualeyes 2013-02-12 20:34:18
謝謝,我在工作表中使用H2,但會與它一起玩。 – Jack 2013-02-13 01:44:03
@virtualeyes,這似乎是最好的(也是唯一的)解決方案。對於工作表和H2,您需要更改數據庫網址中的跟蹤級別,例如implicit val session = Database.forURL(「jdbc:h2:mem:test1; TRACE_LEVEL_FILE = 4」,driver =「org.h2.Driver」)。createSession()。請給出您的建議(請提及工作表)作爲答案。 – Jack 2013-02-13 01:51:05