#log4j根loggger
#log4j.rootLogger=INFO, A1
#自定义loggger对象myLogger
log4j.logger.myLogger=INFO, A1, F1, F2
#myLogger不向上层传递日志
log4j.additivity.myLogger=false
#控制台
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.Threshold=DEBUG
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%l][%t] %m%n
#文件1,按时间滚动,每天一个文件,由DatePattern决定,也可设置为每周yyyy-ww,每月,每小时
log4j.appender.F1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.F1.File=./logs/info/info.log
log4j.appender.F1.DatePattern='.'yyyy-MM-dd
log4j.appender.F1.Append=true
log4j.appender.F1.Threshold=INFO
log4j.appender.F1.layout=org.apache.log4j.PatternLayout
log4j.appender.F1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%l][%t] %m%n
#文件2,按日志文件大小滚动
log4j.appender.F2=org.apache.log4j.RollingFileAppender
log4j.appender.F2.File=./logs/error/error.log
log4j.appender.F2.Append=true
log4j.appender.F2.Threshold=ERROR
log4j.appender.F2.MaxFileSize=5MB
log4j.appender.F2.MaxBackupIndex=100
log4j.appender.F2.layout=org.apache.log4j.PatternLayout
log4j.appender.F2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%l][%t] %m%n
#iBatis的logger配置
log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
#提高ResultSet的log级别,以达到不在控制台打印查询结果集的目的
log4j.logger.java.sql.ResultSet=ERROR
测试:
package my;
import org.apache.log4j.Logger;
public class Test
{
public static void main(String[] args)
{
Logger l = Logger.getLogger("myLogger");
l.info("infooooooooooo");
try
{
Logger ll = null;
ll.info("afdas");
}
catch (Exception e)
{
l.error("eeeeeeee:", e);
}
}
}