1.配置檔案生成日志檔案。
properties配置:
log4j.rootLogger = debug,stdout,file
### 輸出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%n
### 輸出到日志檔案 ###
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
###設定DatePattern,當天日志儲存到log.log檔案,前一天的日志檔案名将被修改為log.log + _yyyy-MM-dd.log
log4j.appender.file.File =D/logs/log.log
log4j.appender.file.DatePattern = '_'yyyy-MM-dd'.log'
log4j.appender.file.Append = true
## 輸出DEBUG級别以上的日志
log4j.appender.file.Threshold = DEBUG
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
2.java代碼生成日志檔案。
public class LoggerTool{
private static Logger logger;
private static String filepath;
public LoggerTool(String path){ //path:日志儲存路徑
filepath=path;
new File(filepath).mkdir(); //建立檔案夾
}
public static void infoMsg(String filename,String msg){ //filename:生成日志的檔案名 msg:日志資訊
logger = Logger.getLogger("_"+filename);
DailyRollingFileAppender appender=new DailyRollingFileAppender();
appender.setFile(filepath+"/"+filename+".log");
appender.setDatePattern("'.'yyyy-MM-dd");
PatternLayout layout=new PatternLayout("%-4r %-5p %d{yyyy-MM-dd HH:mm:ssS}%c %m%n");
appender.setLayout(layout);
appender.setAppend(true);
appender.activateOptions();
logger.addAppender(appender);
logger.setAdditivity(false);
logger.setLevel((Level)Level.INFO);
logger.info(msg);
appender.close();
}
public Logger getLogger() {
return logger;
}
public static void main(String[] args){
new LoggerTool("D:\\test\\vcmslog");
LoggerTool.infoMsg("aaa","啊哈哈哈哈哈哈哈");
LoggerTool.infoMsg("wang","啦啦啦啦啦阿拉拉了");
}
}