hibernate logback sql

6
我想在使用Hibernate时查看SQL查询的实际参数。我将以下内容添加到我的logback.xml文件以查看这些查询(带有问号):
<logger name="org.hibernate.type" level="TRACE" />

但是没有任何效果。

是否需要进行特殊配置?

OnConsoleStatusListener会显示正确的配置信息。

23:48:15,246 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate.type] to TRACE

但是在org.hibernate.type包中没有输出。

我正在使用Spring与Jpa。


也许这可以帮到你,对我有用。 https://dev59.com/4m855IYBdhLWcg3wZzbf#4367283 干杯! - Walter Longo Neto
4个回答

2

您需要确保以下几点:

  1. 您确定SLF4J + LogBack在您的应用程序中工作正常吗?
  2. 您的记录器是否指向任何附加器?

1
是的,我对两个问题都回答“是”,我正在使用ConsoleAppender,并且我可以看到其他日志输出(例如spring logging)和一些其他的hibernate logging。 - lincetto

1

你配置了附加项吗?

<configuration>
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <!-- "application-name" is a variable -->
    <File>c:/logs/${application-name}.log</File>
    <layout class="ch.qos.logback.classic.PatternLayout">
      <Pattern>%d %p %t %c - %m%n</Pattern>
    </layout>
  </appender>
  <root level="debug">
    <appender-ref ref="FILE"/>
  </root>
</configuration>

1
我目前只使用ConsoleAppender(非常初步的开发阶段) - lincetto

1

我正在使用这个配置,它对我很有效:

<logger name="org.hibernate.type" level="trace" additivity="false">
  <appender-ref ref="consoleAppender" />
</logger>

1
如果我使用 ref="STDOUT",这对我也有效。这是因为我们在配置中已经有 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">,而 ref 需要引用一个名称,而不是一个 class - mirabilos

1

适用于我的日志记录器如下:

<logger name="org.hibernate.type" level="TRACE" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接