常用log4j配置說明

來源:互聯網
上載者:User
常用log4j配置,一般可以採用兩種方式,.properties和.xml,下面舉兩個簡單的例子:

一、log4j.properties

### 設定org.zblog域對應的層級INFO,DEBUG,WARN,ERROR和輸出地A1,A2 ##
log4j.category.org.zblog=ERROR,A1
log4j.category.org.zblog=INFO,A2

log4j.appender.A1=org.apache.log4j.ConsoleAppender
### 設定輸出地A1,為ConsoleAppender(控制台) ##
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
### 設定A1的輸出布局格式PatterLayout,(可以靈活地指定配置模式)##
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
### 配置日誌輸出的格式##

log4j.appender.A2=org.apache.log4j.RollingFileAppender
### 設定輸出地A2到檔案(檔案大小到達指定尺寸的時候產生一個新的檔案)##
log4j.appender.A2.File=E:/study/log4j/zhuwei.html
### 檔案位置##
log4j.appender.A2.MaxFileSize=500KB
### 檔案大小##
log4j.appender.A2.MaxBackupIndex=1
log4j.appender.A2.layout=org.apache.log4j.HTMLLayout
##指定採用html方式輸出

二、log4j.xml

<?xml version="1.0" encoding="GB2312" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<appender name="org.zblog.all" class="org.apache.log4j.RollingFileAppender">
<!-- 設定通道ID:org.zblog.all和輸出方式:org.apache.log4j.RollingFileAppender -->
<param name="File" value="E:/study/log4j/all.output.log" /><!-- 設定File參數:日誌輸出檔案名 -->
<param name="Append" value="false" /><!-- 設定是否在重新啟動服務時,在原有日誌的基礎添加新日誌 -->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p (%c:%L)- %m%n" /><!-- 設定輸出檔案項目和格式 -->
</layout>
</appender>

<appender name="org.zblog.zcw" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="E:/study/log4j/zhuwei.output.log" />
<param name="Append" value="true" />
<param name="MaxFileSize" value="10240" /> <!-- 設定檔案大小 -->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p (%c:%L)- %m%n" />
</layout>
</appender>

<logger name="zcw.log"> <!-- 設定網域名稱限制,即zcw.log域及以下的日誌均輸出到下面對應的通道中 -->
<level value="debug" /><!-- 順位 -->
<appender-ref ref="org.zblog.zcw" /><!-- 與前面的通道id相對應 -->
</logger>

<root> <!-- 設定接收所有輸出的通道 -->
<appender-ref ref="org.zblog.all" /><!-- 與前面的通道id相對應 -->
</root>

</log4j:configuration>

三、設定檔載入方法:

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.apache.log4j.xml.DOMConfigurator;

public class Log4jApp {
public static void main(String[] args) {
DOMConfigurator.configure("E:/study/log4j/log4j.xml");//載入.xml檔案
//PropertyConfigurator.configure("E:/study/log4j/log4j.properties");//載入.properties檔案

Logger log=Logger.getLogger("org.zblog.test");
log.info("測試");
}
}

四、項目使用log4j
在web應用中,可以將設定檔的載入放在一個單獨的servlet中,並在web.xml中配置該servlet在應用啟動時候載入。對於在多人項目 中,可以給每一個人設定一個輸出通道,這樣在每個人在構建Logger時,用自己的網域名稱稱,讓調試資訊輸出到自己的log檔案中。

五、常用輸出格式

# -X號:X資訊輸出時靠左對齊;
# %p:日誌資訊層級
# %d{}:日誌資訊產生時間
# %c:日誌資訊所在地(類名)
# %m:產生的日誌具體資訊
# %n:輸出日誌資訊換行

Log4j 學習筆記
http://zooo.51.net/heavyz_cs/notebook/log4j.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.