2013-10-08 223 views
0

我想配置我的休眠应用程序输出日志信息。我有我的log4j.properties配置如下:休眠日志与slf4j和log4j不生成日志文件

{ 
# Direct log messages to a log file 
log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=C:\\sisco.log 
log4j.appender.file.MaxFileSize=1MB 
log4j.appender.file.MaxBackupIndex=1 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 


# Direct log messages to stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 

# Root logger option 
log4j.rootLogger=INFO, file, stdout, debug 


# Log everything. Good for troubleshooting 
log4j.logger.org.hibernate=INFO 

# Log all JDBC parameters 
log4j.logger.org.hibernate.type=ALL 

} 

但我觉得休眠甚至没有阅读这个文件,因为无论我设置到这个文件,没有什么变化,而且我删除它,我的应用程序正常运行。

我想也许,项目中的其他一些jar可能有一个包含在jar中的log4j.properties文件,然后hibernate使用它。它有任何意义吗?

有没有人有任何想法?

感谢

回答

0

文件log4j.xml比文件log4j.properties具有更高的优先级。

例如为:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" 
            "log4j.dtd" > 
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 

    <!-- console --> 
    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"> 
     <param name="threshold" value="TRACE" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="conversionPattern" 
       value="%d{yyyyMMdd-HHmmss.SSS} %-5p (%c.java:%L).%M - %m%n" /> 
     </layout> 
    </appender> 

    <!-- categories --> 
    <category name="org.hibernate"> 
     <priority value="INFO" /> 
    </category> 
    <category name="org.hibernate.type"> 
     <priority value="TRACE" /> 
    </category> 

    <!-- root --> 
    <root> 
     <priority value="TRACE" /> 
     <appender-ref ref="STDOUT" /> 
    </root> 
</log4j:configuration> 

由于框架的1.2.12版本,只需要把它的默认在你的项目的src文件夹。 log4j自动加载它。无需以编程方式加载它或任何额外的东西。

1

你有这个jar添加到您的类路径

slf4j-api-1.7.5.jar  // the slf4j API 
slf4j-log4j12-1.7.5.jar // log4j bindings for slf4j 
log4j-1.2.17.jar   // log4j itself 

这对我的工作,祝你好运〜