Ant*_* O. 11 debugging hibernate jboss7.x
我只想简单地获取Hibernate绑定到问号"?"后面的查询的值.在JBoss 7上.
所以我正在编辑standalone/configuration/logging.properties
以添加这个:
logger.org.hibernate=DEBUG
logger.org.hibernate.type=ALL
Run Code Online (Sandbox Code Playgroud)
但我的控制台,日志文件中都没有任何结果......我错过了什么?
Ant*_* O. 18
哇,它不像以前的版本......我终于找到了配置JBoss 7日志记录和Hibernate 4日志配置的官方方法!
你要做的是编辑standalone/configuration/standalone.xml
(你的配置文件domain
)并搜索<subsystem xmlns="urn:jboss:domain:logging:1.1">
标签.
然后在<console-handler name="CONSOLE"
,我已经将级别信息切换到TRACE(<level name="TRACE"
)并添加了<logger category="org.hibernate">
.
这是部分XML:
<subsystem xmlns="urn:jboss:domain:logging:1.1">
<console-handler name="CONSOLE" autoflush="true">
<level name="TRACE"/>
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
</formatter>
</console-handler>
...
<logger category="org.hibernate.type.descriptor.sql.BasicBinder">
<level name="TRACE"/>
</logger>
...
Run Code Online (Sandbox Code Playgroud)
我从博客文章中找到了另一个更好的(因为它记录了所有JDBC方法调用,而不仅仅是基本绑定)解决方案:spy="true"
在类别中添加<datasource>
声明和TRACE
日志jboss.jdbc.spy
:
<datasource jta="true" jndi-name="java:jboss/datasources/myDS" pool-name="myPool" enabled="true" use-java-context="true" spy="true" use-ccm="true">
Run Code Online (Sandbox Code Playgroud)
和记录器(in <subsystem xmlns="urn:jboss:domain:logging:1.1">
):
<logger category="jboss.jdbc.spy">
<level name="TRACE"/>
</logger>
Run Code Online (Sandbox Code Playgroud)