你所需要的唯一Jar包是: log4j-1.2.x.jar
我当前使用的是log4j-1.2.17.jar 跑这么久一切正常, 日志信息正好可用
配置文件log4j.properties
# Log4J Settings for log4j 1.2.x (via jakarta-commons-logging) # # The five logging levels used by Log are (in order): # # 1. DEBUG (the least serious) # 2. INFO # 3. WARN # 4. ERROR # 5. FATAL (the most serious) # [ level ] , appenderName1 , appenderName2 # Set root logger level , 日志输出目的地, 日志输出目的地 # 一般日期输出最好设置在WARN以及更高级别, 不然Tomcat启动慢且日志内容太杂 log4j.rootLogger=WARN, Console, R # 日志输出路径 log_home=/data/logs/com/wenniuwuren # Console--------------------------------------------------- # 日志输出目的地 # ConsoleAppender(控制台) # FileAppender(文件) # DailyRollingFileAppender(每天产生一个日志文件) # RollingFileAppender(文件大小到达指定尺寸时产生一个新的文件) # WriteAppender(将日志信息以流格式发送到任意指定的地方) # JDBCAppender(将日志信息保存到数据库中) log4j.appender.Console=org.apache.log4j.ConsoleAppender # 日志布局 # HTMLLayout(以HTML表格形式布局) # SimpleLayout(包含日志信息的级别和信息字符串) # TTCCLayout(包含日志产生的时间,执行绪,类别等信息) # PatternLayout(可以灵活的指定布局格式,常用) log4j.appender.Console.layout=org.apache.log4j.PatternLayout # 输出格式 # %c 输出日志信息所属的类的全名 # %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-M-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28 # %f 输出日志信息所属的类的类名 # %l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行 # %m 输出代码中指定的信息,如log(message)中的message # %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n” # %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推 # %r 输出自应用启动到输出该日志信息所耗费的毫秒数 # %t 输出产生该日志事件的线程名 log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n log4j.appender.DEBUG=org.apache.log4j.ConsoleAppender log4j.appender.DEBUG.layout=org.apache.log4j.PatternLayout log4j.appender.DEBUG.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n # Console--------------------------------------------------- log4j.logger.java.sql.ResultSet=DEBUG log4j.logger.org.apache=WARN log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG log4j.logger.java.sql.PreparedStatement=DEBUG log4j.logger.org.springframework=WARN log4j.logger.org.apache.activemq=WARN # R ------------------------------------------------------------------------------- log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.R.layout=org.apache.log4j.PatternLayout # 输出格式 log4j.appender.R.layout.ConversionPattern=[%d{yyyyMMdd HH:mm:ss}-%p][%F:%L][%t]-- %m%n # 日志输出路径及日志文件名 log4j.appender.R.File=${log_home}/wenniuwuren-system.log # 单个日志文件最大容量 log4j.appender.R.MaxFileSize=1024KB # 最大备份文件个数 log4j.appender.R.MaxBackupIndex=10 # R ------------------------------------------------------------------------------- log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - <%m>%n log4j.logger.org.apache.ibatis=DEBUG log4j.logger.java.sql=DEBUG
如果是web应用的话还需要在web.xml里配置(这样tomcat加载的时候才会加载log4j):
<context-param> <param-name>log4jConfigLocation</param-name> <param-value>classpath:log4j.properties</param-value> </context-param> <listener> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener>
log4j配置(详细版)————详细的日志才是解决bug的王道
原文地址:http://blog.csdn.net/wenniuwuren/article/details/42781771