log4j
一 简介:
log4j其实就是提供一套日志记录的工具, 可以根据配置文件, 生成不同的日志效果
日志的级别:
- fatal - 致命的错误
- error - 错误信息
- warn - 警告级别
- info - 普通的数据信息
- debug - 调试级别的信息
二 使用
-
配置配置文件
配置文件一般命名为log4j.properties, 放在项目根路径下(如果使用Mybatis等框架, 会自动加载根目录下的配置文件)
配置文件示例:
### 设置###
log4j.rootLogger = debug,stdout,D,E
### 输出信息到控制抬 ###
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 = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
### 输出DEBUG 级别以上的日志到=E://logs/error.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = E://logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
### 输出ERROR 级别以上的日志到=E://logs/error.log ###
log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =E://logs/error.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = ERROR
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
-
其中的PatternLayout是一种布局格式, 有既定的规则标准:
2.编写java代码:
package com.mtl.log;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.junit.Test;
public class MyLog {
@Test
public void doMyLog(){
String path = MyLog.class.getResource("/").getPath() + "log4j.properties"; //获取配置文件路径
PropertyConfigurator.configure(path); //手动加载配置文件, 如果使用框架无需这步
Logger logger = Logger.getLogger(this.getClass()); //通过getLogger(class)获取logger对象
logger.fatal("这个是致命的错误信息!");
logger.error("这个是错误信息!");
logger.warn("这个是警告信息!");
logger.info("这个是打印信息!");
logger.debug("这个是调试信息!");
}
}
如果希望打印日志到文件, 只需要将日志输出模式更改为D类模式并进行日志文件路径的相应配置即可