来自:https://blog.csdn.net/qq_24879495/article/details/78058551
log4j 2.X与 1.X有一些差别,比如2.x不再支持.properties的配置文件了,只能采用.xml, .json或者 .jsn。
在默认情况下,系统选择配置文件文件的优先级如下:
src或者WEB-INF下名为 log4j-test.json 或者log4j-test.jsn文件
src或者WEB-INF下名为 log4j2-test.xml
src或者WEB-INF下名为 log4j.json 或者log4j.jsn文件
src或者WEB-INF下名为 log4j2.xml的文件
1、下载log4j 2.x
下载解压后拿到log4j-core-xx.jar和log4j-api-xx.jar,xx根据版本而定。我这里是2.8.2版本
2、新建Java工程,添加jar包
新建一个java工程,在工程下新建一个lib文件夹,把刚刚两个jar包放进去,右键bulid Path-> Add to Build Path 添加到构建路径
3、编写log4j2.xml文件
在src下新建log4j2.xml文件,输入以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="[%-5level] [%d{HH:mm:ss.SSS}] [%F:%L)] - %m%n" />
</Console>
</Appenders>
<Loggers>
<Root level="trace">
<AppenderRef ref="Console" />
</Root>
</Loggers>
</Configuration>
4、新建测试类
在默认包下随便新建一个类输入以下代码
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
/**
* @author : 何明胜
*
* 2017年9月21日
*/
public class Test {
public static void main(String[] args) {
testLog4j();
}
public static void testLog4j() {
try {
Logger logger = LogManager.getLogger(Test.class.getName());
logger.trace("this is trace");
logger.debug("this is debug");
logger.info("this is info");
logger.warn("this is warn");
logger.error("this is error");
logger.fatal("this is fatal");
} catch (Exception e) {
e.printStackTrace();
}
}
}
5、运行demo
上述4步完成之后如下图
运行Test类,控制台输出以下信息
因为这里我们设置了输出所有级别的信息,所以可以看到每一条都输出了。后面再介绍log4j2.xml的配置语法和详细配置。