1. 程式人生 > >章節十五、7- 配置檔案-Console Logging

章節十五、7- 配置檔案-Console Logging

一、建立xml檔案

1、建立xml檔案

在專案中我們需要專門建一個資料夾來放xml檔案或者是其它檔案。

2、然後對資料夾進行命名

3、選擇new  其它

4、選擇XML File

5、給xml檔案命名為log4j2.xml

6、建立成功

 

二、使用xml格式來定義配置檔案

開始寫標籤

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <Configuration>
 3     <!-- appenders表示日誌存放的位置 -->
 4     <Appenders>
 5         <!-- 表示在控制檯上輸出資訊 -->
 6         <Console name="Console">
 7             <!-- 設定我們需要輸出資訊,輸出的風格是怎麼樣的 -->
 8             <PatternLayout
 9                 pattern="%d{HH:mm:ss.SSS} %-5level %c{1} -%msg%n%" />
10         </Console>
11     </Appenders>
12     <Loggers>
13         <!-- 定義級別 -->
14         <Root level="info">
15             <!-- 輸出日誌的目的地 -->
16             <AppenderRef ref="Console" />
17         </Root>
18     </Loggers>
19 </Configuration>

 注:

1、<Console name="Console">:name="Console"表示給“Console”取名字。

2、<PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %c{1} -%msg%n%" />:

%d{HH:mm:ss.SSS} 表示輸出到毫秒的時間

%-5level 輸出日誌級別,-5表示左對齊並且固定輸出5個字元,如果不足在右邊補0

%c{1}表示輸出當前類名(填寫“2”,表示輸出該類的類名和所在包名。“3”表示輸出所在的包和所在包的上級包名)

%msg 日誌文字

%n 換行

其他常用的佔位符有:

%F 輸出所在的類檔名,如Client.java

%L 輸出行號

%M 輸出所在方法名

%l  輸出語句所在的行數, 包括類名、方法名、檔名、行數

3、<AppenderRef ref="Console" />:Console是<Appenders>的名字,表示輸出的目的地,這樣rootlog就會使用配置的<Appenders>來記錄log資訊。

 

三、日誌輸出

1、無配置檔案時控制檯的報錯資訊展示(紅色字型報錯提示找不到配置檔案):

2、有配置檔案輸出時資訊展示:

a、首先我們需要將配置檔案build一下

b、然後clean一下

c、執行程式碼

 1 package log4jtutorial;
 2 
 3 import org.apache.logging.log4j.LogManager;
 4 import org.apache.logging.log4j.Logger;
 5 
 6 public class LoggingConsole{
 7     
 8 //    首先需要定義一個log物件
 9 //    定義成static final是因為只需要這一個例項,不能再有子類,多次呼叫的都是這一個例項,所以我們可以一直用這個物件來記錄日誌,不需要建立新的物件。
10 //    .getLogger()方法返回的是一個Logger物件例項
11 //    括號裡面的引數用來記現在所在的類(LoggingDemo.class.getName())
12     private static final Logger log = LogManager.getLogger(LoggingDemo.class.getName());
13     
14     public static void main(String[] args) {
15         log.debug("Debug message logged");
16         log.error("Error message logged");
17         log.fatal("Fatal message logged");
18 
19     }
20 }

d、執行程式碼(可以看出此次沒有紅色錯誤提示,證明配置日誌檔案成功)

注:

在程式碼中我們設定了列印“debug、error、fatal”,但控制檯實際卻只打印了“error、fatal”,這是因為我們在配置檔案中設定了只打印info級別以上的日誌,如果我們把“info”換成“trace”

就能夠將3個級別的日誌都打印出來。

更換級別後的列印結果:

 

如果有不明白的小夥伴可以加群“555191854”問我,群裡都是軟體行業的小夥伴相互一起學習。

內容具有連慣性,未標註的地方可以看前面的部落格,這是一整套關於ava+selenium自動化的內容,從java基礎開始。

歡迎關注,轉載請註明來源。

&n