2013-12-12 3 views
0

Я попытался записать SQL-выход Hibernate в конкретный файл журнала для последующего использования, но вывод Hibernate SQL также появился на моей консоли Eclipse (и, я полагаю, появится в Tomcat catalina.out позже) и покраснел мой экран.Как предотвратить спящий журнал на моей консоли (общий журнал затмения и tomcat)?

Есть ли какой-либо подход, чтобы избежать Hibernate Log на моей консоли? Ниже мои свойства log4j, и спящий режим настройки:


loghome=PATH_TO_LOG_DIRECTORY 

log4j.rootLogger=ERROR,stdout,HB 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=[IRIS-${project}][%p] [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 

log4j.logger.net.myapplication=info,warn,error 
log4j.logger.debug=debug 
log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.debug.layout=org.apache.log4j.PatternLayout 
log4j.appender.debug.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 
log4j.appender.debug.datePattern='.'yyyy-MM-dd 
log4j.appender.debug.Threshold=DEBUG 
log4j.appender.debug.append=true 
log4j.appender.debug.Encoding=UTF-8 
log4j.appender.debug.File=${loghome}/debug.log 

log4j.logger.info=info 
log4j.appender.info=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.info.layout=org.apache.log4j.PatternLayout 
log4j.appender.info.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 
log4j.appender.info.datePattern='.'yyyy-MM-dd 
log4j.appender.info.Threshold=INFO 
log4j.appender.info.append=true 
log4j.appender.info.Encoding=UTF-8 
log4j.appender.info.File=${loghome}/info.log 

log4j.logger.warn=warn 
log4j.appender.warn=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.warn.layout=org.apache.log4j.PatternLayout 
log4j.appender.warn.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 
log4j.appender.warn.datePattern='.'yyyy-MM-dd 
log4j.appender.warn.Threshold=WARN 
log4j.appender.warn.append=true 
log4j.appender.warn.Encoding=UTF-8 
log4j.appender.warn.File=${loghome}/warn.log 

log4j.logger.error=error 
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.error.layout=org.apache.log4j.PatternLayout 
log4j.appender.error.layout.ConversionPattern=[%p] [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 
log4j.appender.error.datePattern='.'yyyy-MM-dd 
log4j.appender.error.Threshold=ERROR 
log4j.appender.error.append=true 
log4j.appender.error.Encoding=UTF-8 
log4j.appender.error.File=${loghome}/error.log 


log4j.appender.HB=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.HB.layout=org.apache.log4j.PatternLayout 
log4j.appender.HB.layout.ConversionPattern=HB: [%d{yyyy-MM-dd HH:mm:ss}] [ Class = %C | Method = %M | Line = %L ] | %m |%n 
log4j.appender.HB.datePattern='.'yyyy-MM-dd 
log4j.appender.HB.append=true 
log4j.appender.HB.Encoding=UTF-8 
log4j.appender.HB.File=${loghome}/hb.log 

log4j.logger.org.hibernate.SQL=HB 

Hibernate установка:

hibernate.dialect=org.hydra.webapp.util.MySQL5MyISAMDialect 
hibernate.connection.driver_class=com.mysql.jdbc.Driver 
hibernate.connection.url=<URL> 
hibernate.connection.username=<USER> 
hibernate.connection.password=<PASSWORD> 
hibernate.connection.show_sql=false 
dao.type=hibernate 

ответ

1

Кажется, вы должны установить флаг аддитивности ложь для того, чтобы предотвратить регистрацию событие отправляется родительскому (в данном случае консольному регистратору). Проверьте

Log4j Manual и this

+0

Спасибо за ответ! Я добавил новую строку для аддитивности (log4j.additivity.org.hibernate = false), но все же моя консоль ловит вывод из спящего режима ... –

Смежные вопросы