|
|
空虚的南瓜 · 武汉市轨道交通3号线二期建设工程项目国有土地 ...· 2 月前 · |
|
|
苦闷的金鱼 · 鄂州市2023年“师德标兵”“优秀乡村教师” ...· 4 月前 · |
|
|
干练的水煮肉 · 被父母宠坏的孩子,身上可能会出现四个特征,第 ...· 2 年前 · |
|
|
神勇威武的拐杖 · 嘉兴这所公办学校九月将正式“上线”,要打造成 ...· 2 年前 · |
如何在日志中显示SQL语句?我使用的是EBeans,由于某些原因,它无法插入,但我看不出有什么问题。
我试图将我的配置编辑为:
db.default.logStatements=true
并将其添加到logback.xml中
<logger name="com.jolbox" level="DEBUG" />
下面是我在网上找到的一些答案,但它似乎不适用于2.4…
日志记录随着 Play 2.4 而改变。从现在开始,要在控制台中显示SQL语句,只需将以下一行添加到conf/logback.xml文件中:
<logger name="org.avaje.ebean.SQL" level="TRACE" />
它应该能正常工作。
正如@Flo354在评论中指出的那样,对于 Play 2.6 ,您应该使用:
<logger name="io.bean" level="TRACE" />
FYI,Ebean的 新文档页 上有一个很好的视频教程,展示了只为代码中的选定区域捕获SQL语句的方法。
因此,在开发和/或使用日志语句作为 用视频显示 执行测试时,只能在有问题的地方记录语句。
简单地说:像通常一样将最新的
阿瓦杰-伊比亚诺姆
依赖项添加到
built.sbt
中,所以以后您可以在代码中使用它,如下所示:
LoggedSql.start();
User user = User.find.byId(123);
// ... other queries
List<String> capturedLogs = LoggedSql.stop();
注意,如果您不需要像通常一样在控制台中显示语句,那么甚至不需要获取语句的
List
。所以你也可以像这样使用它:
if (Play.isDev()) LoggedSql.start();