Java日志-Log4J2
sf2gis@163.com
2015年11月9日
1 目标:日志信息指定输出格式、位置,并可在运行时控制开关,可能输出滚动文件。
2 原理:通过XML读取配置文件。根据配置生成不同的对象,每个对象都有不同的输出方式和输出格式。
3 流程:安装库,配置日志,输出日志。
3.1 安装库:下载log4j2,解压后将log4j-api-2.4.1.jar和log4j-core-2.4.1.jar复制到工程目录并添加到classpath。
3.2 配置日志:忽略。
默认可以获取root日志对象,只能输出error级别日志输出到控制台。
3.3 输出日志:使用LoggerMagager获取默认日志对象。
packagelee;
importorg.apache.logging.log4j.LogManager;
importorg.apache.logging.log4j.Logger;
publicclass Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Logger logger =LogManager.getLogger();
logger.error("this iserror.");
}
}
4 方法:配置、使用。
目标:配置输出方式,输出格式,内容等。
原理:配置输出方式及格式占位符。
方法:
log4j2是对log4j的升级(log4j1.x于2012停止更新),多线程下性能提高是1.x的10倍,单线程也有轻微提高。
参考:http://blog.csdn.net/lrenjun/article/details/8178875
http://blog.csdn.net/memray/article/details/17488433
4.1 文件加载:指定位置,指定文件名
默认的加载顺序为:
classpath下名为log4j-test.json 或者log4j-test.jsn文件
classpath下名为 log4j2-test.xml
classpath下名为log4j.json 或者log4j.jsn文件
classpath下名为 log4j2.xml
4.2 组织方式:Configuration-》Appenders、Loggers
4.2.1根节点Configuration。
4.2.2输出目标节点Appenders:定义输出目标,可以定义多个输出目标。
控制台:Console。
文件:File。
循环文件:RollingFile。
4.2.3日志对象节点Loggers。
示例:
<?xmlversion="1.0" encoding="UTF-8"?>
<configuration>
<appenders></appenders>
<loggers></loggers>
</configuration>
4.3 日志格式:输出方式appenders
目标:控制输出的位置、文件格式等。
参考: