log4j配置每天日志

log4j.properties

把这个文件放到 src 文件夹下 

###############################log4j.properties###############################
#日志输出级别
log4j.rootLogger=DEBUG, R  


# File 输出 一天一个文件,输出路径可以定制,一般在根路径下
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender

#日志路径
log4j.appender.R.file=F:/rmtic/log/log_

#日期文件名
log4j.appender.file.DatePattern=yyyy-MM-dd'.log'

#追加日志
log4j.appender.R.Append=true  

#日志布局
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n


Log.java

package com.rmtic.log;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class Log {
	
	// Logger实例
	public Logger loger;
	// 将Log类封装成单实例的模式,独立于其他类。以后要用到日志的地方只要获得Log的实例就可以方便使用
	private static Log log;

	// 构造函数,用于初始化Logger配置需要的属性
	private Log() {
		// 获得当前目录路径
		String filePath = this.getClass().getResource("/").getPath();
		// 找到log4j.properties配置文件所在的目录(已经创建好)
		filePath = filePath.substring(1).replace("bin", "src");
		// 获得日志类loger的实例
		loger = Logger.getLogger(this.getClass());
		// loger所需的配置文件路径
		PropertyConfigurator.configure(filePath + "log4j.properties");
	}

	public static Log getLoger() {
		if (log != null)
			return log;
		else
			return new Log();
	}
	
}



package com.rmtic.test;

import com.rmtic.log.Log;

public class test {

	/**
	 * @param args
	 */
	// 测试函数
	public static void main(String args[]) {
		
		Log log = Log.getLoger();
		log.loger.info("a");
		/*try {
			int a = 2 / 0;
		} catch (Exception e) {
			// 控制台打印异常信息
			e.printStackTrace();
			// 写入到日子文件
			log.loger.error("error", e);
			log.loger.info("a");
		}*/
	}

}


你可能感兴趣的:(log4j配置每天日志)