摘要
本節演示log4j的demo實例
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的配置語法和詳細配置。