Posted on 2007-08-07 18:21
itVincent 閱讀(1711)
評論(0) 編輯 收藏 所屬分類:
Java基礎
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE log4j:configuration PUBLIC "-//Apache//DTD Log4j 1.2//EN"
3
"http://logging.apache.org/log4j/docs/api/org/apache/log4j/xml/log4j.dtd">
4
<log4j:configuration debug="false">
5
6
<appender name="FILE" class="org.apache.log4j.FileAppender">
7
<param name="File" value="../log/system.log" />
8
<param name="Append" value="false" />
9
<param name="Threshold" value="info" />
10
<layout class="org.apache.log4j.PatternLayout">
11
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m%n" />
12
</layout>
13
</appender>
14
15
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
16
<param name="Target" value="System.out"/>
17
<param name="Threshold" value="info" />
18
<layout class="org.apache.log4j.PatternLayout">
19
<param name="ConversionPattern"
20
value="%d{ABSOLUTE} %-5p [%c{1}] %m%n" />
21
</layout>
22
</appender>
23
24
<appender name="DAILYFILE" class="org.apache.log4j.DailyRollingFileAppender">
25
<param name="File" value="../log/daily_system.log" />
26
<param name="Append" value="true" />
27
<param name="Threshold" value="info" />
28
<param name="DatePattern" value="'.'yyyy-MM-dd" />
29
<layout class="org.apache.log4j.PatternLayout">
30
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m%n" />
31
</layout>
32
</appender>
33
34
<appender name="DEBUG_FILE" class="org.apache.log4j.FileAppender">
35
<param name="File" value="../log/debug.log" />
36
<param name="Append" value="false" />
37
<!--<param name="Threshold" value="info" />-->
38
<layout class="org.apache.log4j.PatternLayout">
39
<param name="ConversionPattern" value="%d %-5p [%c] %m%n" />
40
</layout>
41
</appender>
42
43
<appender name="DEBUG_HTML" class="org.apache.log4j.FileAppender">
44
<param name="File" value="../log/debug.html" />
45
<param name="Append" value="false" />
46
<param name="Threshold" value="info" />
47
<layout class="org.apache.log4j.HTMLLayout">
48
<param name="Title" value="debug html log" />
49
</layout>
50
</appender>
51
52
<logger name="net.blogjava.itvinent">
53
<level value="debug"/>
54
<appender-ref ref="DEBUG_FILE"/>
55
56
</logger>
57
58
59
<root>
81
<level value="info"/>
82
<appender-ref ref="CONSOLE" />
83
<appender-ref ref="FILE" />
84
<appender-ref ref="DEBUG_HTML"/>
85
<appender-ref ref="DAILYFILE"/>
86
</root>
91
</log4j:configuration>
本文適合對log4j有一定了解的朋友^_^
CONSOLE是控制臺日志,在控制臺上顯示日志信息
FILE是文件日志,程序每次啟動本文件會清空,寫入新的日志
DEBUG_HTML是HTML日志,日志以HTML格式生成,方便用瀏覽器察看日志
DEBUG_FILE 是保存debug信息的日志文件
DAILYFILE是定時備份日志,程序啟動時,會生成一個../log/daily_system.log文件,<param name="DatePattern" value="'.'yyyy-MM-dd" />表示每天深夜時會自動復制daily_system.log的內容生成一個名如daily_system.log.2008-08-07的日志文件
-----------------------------------------------------------------------------------------------------------------------
下面再解釋一些共用的設置參數:
<param name="File" value="../log/system.log" />表示生成的日志文件保存的目錄與名稱
<param name="Append" value="false" />false表示重啟程序之后,不會把日志添加到文件末尾,取而代之是清空原來日志,寫入新的日志.true則是會把新日志添加到文件末尾
<param name="Threshold" value="info" />表示這個appender只顯示value以上級別的日志
<layout class="org.apache.log4j.PatternLayout">表示所用的日志外觀,即我們的日志要以何種格式顯示出來
----------------------------------------------------------------------------------------------------------------------
<logger name="net.blogjava.itvincent">
<level value="debug"/>
<appender-ref ref="DEBUG_FILE"/>
</logger>
表示DEBUG_FILE這個appender,會顯示所有為net.blogjava.itvincent開頭的日志名稱的debug信息
<root>
<level value="info"/>
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE" />
<appender-ref ref="DEBUG_HTML"/>
<appender-ref ref="DAILYFILE"/>
</root>
表示在根日志器中加入CONSOLE、FILE、DEBUG_HTML、DAILYFILE這四個appender
要使日志生效,就要通過上面兩種方式加入appender
---------------------------------------------------------------------------------------------------------
Java類中插入以下成員變量:
private static Logger log = LoggerFactory.getLogger(Sample.class);
歡迎回復回信交流!