Spring MVC,Hibernate,Log4j,SLF4j
我调用的日志条目工作正常。但是Hibernate生成的日志条目会出现在控制台中,但不会出现在日志文件中。
log4j.logger.org.springframework=WARN
log4j.logger.org.hibernate=INFO
log4j.logger.org.hibernate.type=ALL
log4j.rootLogger = DEBUG, FILE, console
答案 0 :(得分:1)
你需要使用这样的记录器appender:
log4j.appender.MyFileAppender=org.apache.log4j.FileAppender
log4j.appender.MyFileAppender.File=logFileName.log
log4j.appender.MyFileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.MyFileAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x :: %m%n
然后在你的log4j.rootLogger中你可以做
log4j.rootLogger = DEBUG, FILE, MyFileAppender
这会将日志输出放入log4j.appender.MyFileAppender.File = logFileName.log
中指定的文件名中这需要添加到您的log4j.properties中。
@Edit:
对于Hibernate,您需要在log4j.properties中使用以下内容来识别hibernate日志类别
log4j.logger.org.hibernate=INFO, MyFileAppender
log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=TRACE
log4j.logger.org.hibernate.hql.ast.AST=info
log4j.logger.org.hibernate.tool.hbm2ddl=warn
log4j.logger.org.hibernate.hql=debug
log4j.logger.org.hibernate.cache=info
log4j.logger.org.hibernate.jdbc=debug