寒江雪
BlogJava
首頁
新隨筆
聯系
聚合
管理
posts - 8, comments - 174, trackbacks - 0
LOG4J 之經典篇
一、log4j配置,一般可以采用兩種方式,資源文件和XML文件。
1、屬性文件
log4j.rootLogger=DEBUG,stdout,R
##日志文件的名稱(定義為控制臺輸出)
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
##靈活定義輸出格式
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
##輸出格式定義
log4j.appender.stdout.layout.ConversionPattern=[%t]?%-5p?%-20c{2}?-?%m?%n?
##日志文件的名稱(定義為文件輸出)
log4j.appender.R=org.apache.log4j.RollingFileAppender
##日志文件路徑
log4j.appender.R.File=D:/log/wenhan-uk.log
##
log4j.appender.R.ImmediateFlush=true
##日志文件的大小
log4j.appender.R.MaxFileSize=100KB
##
log4j.appender.R.MaxBackupIndex=1
##文件輸出方式
log4j.appender.R.layout=org.apache.log4j.PatternLayout
##輸出格式定義
log4j.appender.R.layout.ConversionPattern=%d{ABSOLUTE}?[%t]?%-5p?%-30c{3}?%x?-?%m?%n
###############################??配置根Logger??############################
語法:??log4j.rootLogger?=?[?level?]?,?appenderName,?appenderName?…???????????
參數:??
???????1、?level:?????????log4j級別,是日志記錄的優先級。??????????????????????????????????????
???????2、?appenderName:?日志信息輸出處,您可以同時指定多個輸出目的地,可以是文件、控制臺等。
例子:??log4j.rootLogger=DEBUG,R??????DEBUG為級別?????A1為輸出地????????????????????????????????
###############################??log4j級別??###############################
級別:??????
???????FATAL??-??0????指出每個嚴重的錯誤事件將會導致應用程序的退出。
???????ERROR??-??3????指出雖然發生錯誤事件,但仍然不影響系統的繼續運行。
???????WARN???-??4????表明會出現潛在錯誤的情形。
???????INFO???-??6????表明消息在粗粒度級別上突出強調應用程序的運行過程。
???????DEBUG??-??7????指出細粒度信息事件對調試應用程序是非常有幫助的。
###############################??appender??###############################
類別:
???????org.apache.log4j.ConsoleAppender???????????????????????(控制臺)
???????org.apache.log4j.FileAppender??????????????????????????(文件)
???????org.apache.log4j.DailyRollingFileAppender??????????????(每天產生一個日志文件)
???????org.apache.log4j.RollingFileAppender???????????????????(文件大小到達指定尺寸的時候產生一個新的文件)
???????org.apache.log4j.WriterAppender??????????????????????(將日志信息以流格式發送到任意指定的地方)?
例子:
???????log4j.appender.A1=org.apache.log4j.ConsoleAppender???(指定A1的appender為控制臺)
???
##############################??layout??##################################
類別:
???????org.apache.log4j.HTMLLayout??????????????????????????(以HTML表格形式布局)
???????org.apache.log4j.PatternLayout???????????????????????(可以靈活地指定布局模式)
???????org.apache.log4j.SimpleLayout????????????????????????(包含日志信息的級別和信息字符串)
???????org.apache.log4j.TTCCLayout??????????????????????????(包含日志產生的時間、線程、類別等等信息)
########################??配置log4j輸出地appender??##########################
語法:
???????log4j.appender.[appenderName]?=?appender?class????????(指定輸出地所對應的class)
???????log4j.appender.[appenderName].option1?=?value1?????????(設定第一個參數)
???????
??????????參數包含文件路徑、輸出格式等等????????????????????
?
???????log4j.appender.[appenderName].optionN?=?valueN?????????(設定第N個參數)
例子:
???????log4j.appender.stdout=
???????????????????????org.apache.log4j.ConsoleAppender?????????(指定stdout輸出地為控制臺)
???????log4j.appender.stdout.layout=
???????????????????????org.apache.log4j.PatternLayout???????????(定義為靈活樣式輸出)
???????log4j.appender.stdout.layout.ConversionPattern=
???????????????????????[%t]?%-5p?%-20c{2}?-?%m?%n???????????????(指定日志輸出格式)
?
########################??定義靈活輸出格式??###################################??????
參數:
???????-X號:??X信息輸出時左對齊;
???????%p:????日志信息級別
???????%d{}:??日志信息產生時間
???????%c:????日志信息所在地(類名)
???????%m:????產生的日志具體信息
???????%n:????輸出日志信息換行????
##############################??其他設置??###################################???
???????
關于Log4j比較全面的配置
LOG4J的配置之簡單使它遍及于越來越多的應用中了:Log4J配置文件實現了輸出到控制臺、文件、回滾文件、發送日志郵件、輸出到數據庫日志表、自定義標簽等全套功能。擇其一二使用就夠用了,?
log4j.rootLogger=DEBUG,CONSOLE,A1,im?
log4j.addivity.org.apache=true?
?
#?應用于控制臺?
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender?
log4j.appender.Threshold=DEBUG?
log4j.appender.CONSOLE.Target=System.out?
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout?
log4j.appender.CONSOLE.layout.ConversionPattern=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n?
#log4j.appender.CONSOLE.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]?n%c[CATEGORY]%n%m[MESSAGE]%n%n?
#應用于文件?
log4j.appender.FILE=org.apache.log4j.FileAppender?
log4j.appender.FILE.File=file.log?
log4j.appender.FILE.Append=false?
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout?
log4j.appender.FILE.layout.ConversionPattern=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n?
#?Use?this?layout?for?LogFactor?5?analysis?
?
#?應用于文件回滾?
log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender?
log4j.appender.ROLLING_FILE.Threshold=ERROR?
log4j.appender.ROLLING_FILE.File=rolling.log?
log4j.appender.ROLLING_FILE.Append=true?
log4j.appender.ROLLING_FILE.MaxFileSize=10KB?
log4j.appender.ROLLING_FILE.MaxBackupIndex=1?
log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout?
log4j.appender.ROLLING_FILE.layout.ConversionPattern=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n?
#應用于socket?
log4j.appender.SOCKET=org.apache.log4j.RollingFileAppender?
log4j.appender.SOCKET.RemoteHost=localhost?
log4j.appender.SOCKET.Port=5001?
log4j.appender.SOCKET.LocationInfo=true?
#?Set?up?for?Log?Facter?5?
log4j.appender.SOCKET.layout=org.apache.log4j.PatternLayout?
log4j.appender.SOCET.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD]%n%c[CATEGORY]%n%m[MESSAGE]%n%n?
#?Log?Factor?5?Appender?
log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender?
log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000?
?
#?發送日志給郵件?
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender?
log4j.appender.MAIL.Threshold=FATAL?
log4j.appender.MAIL.BufferSize=10?
log4j.appender.MAIL.From=xxx@www.xxx.com?
log4j.appender.MAIL.SMTPHost=www.wusetu.com?og4j.appender.MAIL.Subject=Log4J?Message?
log4j.appender.MAIL.To=xxx@www.xxx.com?
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout?
log4j.appender.MAIL.layout.ConversionPattern=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n?
?
#?用于數據庫?
log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender?
log4j.appender.DATABASE.URL=jdbc:mysql://localhost:3306/test?
log4j.appender.DATABASE.driver=com.mysql.jdbc.Driver?
log4j.appender.DATABASE.user=root?
log4j.appender.DATABASE.password=?
log4j.appender.DATABASE.sql=INSERT?INTO?LOG4J?(Message)?VALUES?('[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n')?
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout?
log4j.appender.DATABASE.layout.ConversionPattern=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n?
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender?
log4j.appender.A1.File=SampleMessages.log4j?
log4j.appender.A1.DatePattern=yyyyMMdd-HH'.log4j'?
log4j.appender.A1.layout=org.apache.log4j.xml.XMLLayout?
輸出到2000NT日志
?把Log4j壓縮包里的NTEventLogAppender.dll拷到WINNT\SYSTEM32目錄下
?log4j.logger.NTlog=FATAL,?A8
?#?APPENDER?A8
?log4j.appender.A8=org.apache.log4j.nt.NTEventLogAppender
?log4j.appender.A8.Source=JavaTest
?log4j.appender.A8.layout=org.apache.log4j.PatternLayout
?log4j.appender.A8.layout.ConversionPattern=%-4r?%-5p?[%t]?%37c?%3x?-?%m%n
#自定義Appender?
log4j.appender.im?=?net.cybercorlin.util.logger.appender.IMAppender?
log4j.appender.im.host?=?mail.cybercorlin.net?
log4j.appender.im.username?=?username?
log4j.appender.im.password?=?password?
log4j.appender.im.recipient?=?xxx@xxx.net?
log4j.appender.im.layout=org.apache.log4j.PatternLayout?
log4j.appender.im.layout.ConversionPattern?=[framework]?%d?-?%c?-%-4r?[%t]?%-5p?%c?%x?-?%m%n
#####################################??end??######################################?????????
???????
???????
???????
2、XML文件例子
<?
xml?version="1.0"?encoding="GB2312"?
?>
<!
DOCTYPE?log4j:configuration?SYSTEM?"log4j.dtd"
>
<
log4j:configuration?
xmlns:log4j
="http://jakarta.apache.org/log4j/"
>
???
<
appender?
name
="com.unmi.all"
?class
="org.apache.log4j.RollingFileAppender"
>
???
??????
<!--
?設置通道ID:com.unmi.all和輸出方式:org.apache.log4j.RollingFileAppender?
-->
??????
<
param?
name
="File"
?value
="E:/study/log4j/all.output.log"
?
/>
<!--
?設置File參數:日志輸出文件名?
-->
??????
<
param?
name
="Append"
?value
="false"
?
/>
<!--
?設置是否在重新啟動服務時,在原有日志的基礎添加新日志?
-->
??????
<
param?
name
="MaxBackupIndex"
?value
="10"
?
/>
?
??????
<
layout?
class
="org.apache.log4j.PatternLayout"
>
??????????
<
param?
name
="ConversionPattern"
?value
="%p?(%c:%L)-?%m%n"
?
/>
<!--
?設置輸出文件項目和格式?
-->
??????
</
layout
>
???
</
appender
>
???
???
<
appender?
name
="com.unmi.zcw"
?class
="org.apache.log4j.RollingFileAppender"
>
??????
<
param?
name
="File"
?value
="E:/study/log4j/unmi.output.log"
?
/>
??????
<
param?
name
="Append"
?value
="true"
?
/>
??????
<
param?
name
="MaxFileSize"
?value
="10240"
?
/>
?
<!--
?設置文件大小?
-->
??????
<
param?
name
="MaxBackupIndex"
?value
="10"
?
/>
?
??????
<
layout?
class
="org.apache.log4j.PatternLayout"
>
??????????
<
param?
name
="ConversionPattern"
?value
="%p?(%c:%L)-?%m%n"
?
/>
??????
</
layout
>
???
</
appender
>
???
???
<
logger?
name
="unmi.log"
>
?
<!--
?設置域名限制,即zcw.log域及以下的日志均輸出到下面對應的通道中?
-->
??????
<
level?
value
="debug"
?
/>
<!--
?設置級別?
-->
??????
<
appender-ref?
ref
="com.unmi.zcw"
?
/>
<!--
?與前面的通道id相對應?
-->
???
</
logger
>
???
???
<
root
>
?
<!--
?設置接收所有輸出的通道?
-->
??????
<
appender-ref?
ref
="com.unmi.all"
?
/>
<!--
?與前面的通道id相對應?
-->
???
</
root
>
</
log4j:configuration
>
二、配置文件加載方法:
?
對于properties文件,一般都不用手工去加載,由Log4j第一次初始化時自動就加載了
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(
"
com.unmi.test
"
);
???????log.info(
"
測試
"
);
???}
}
?????????????????????############################???????end ??????? ##############################
posted on 2007-08-15 17:00
月月鳥
閱讀(2536)
評論(7)
編輯
收藏
所屬分類:
J2EE
FeedBack:
#
re: LOG4J 之經典篇
2008-11-28 11:15 |
sunchuanfu
lz寫的很詳細啊,收藏了先。
回復
更多評論
#
re: LOG4J 之經典篇
2010-07-01 22:38 |
月月鳥
http://wxinpeng.javaeye.com/blog/552735
Spring的AOP事務管理默認針對unchecked異常回滾
回復
更多評論
#
re: LOG4J 之經典篇
2010-07-07 21:01 |
月月鳥
http://www.cr173.com/soft/11546.html
回復
更多評論
#
re: LOG4J 之經典篇
2010-07-27 22:09 |
月月鳥
http://www.tkk7.com/Unmi/archive/2007/10/17/153413.html
回復
更多評論
#
re: LOG4J 之經典篇
2010-08-23 23:21 |
月月鳥
讓開發自動化系列專欄
LiquiBase
http://www.ibm.com/developerworks/cn/java/j-ap/
回復
更多評論
#
re: LOG4J 之經典篇
2010-08-23 23:40 |
月月鳥
http://www.phontol.com/20090717_480370_3.html
回復
更多評論
#
re: LOG4J 之經典篇
2010-09-19 20:43 |
wenpt
http://plugins.intellij.net/plugin/?id=631
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Copyright ©2025 月月鳥 Powered By:
博客園
模板提供:
滬江博客
<
2007年8月
>
日
一
二
三
四
五
六
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆分類
(8)
ajax(2)
eclipse
flex(1)
hibernate
ibatis
J2EE(1)
J2SE(1)
javascript
jsf
spring
struts
webwork
其他(3)
報表(report)
隨筆檔案
(8)
2007年8月 (8)
文章分類
(1)
flex
其他(1)
新技術
文章檔案
(1)
2012年4月 (1)
其他
ext 中文文檔中心
javascirpt封裝庫API中文文檔
Flex中文網站
ORM Tool
中間件技術
娛樂
技術
dhtml學習
ext中文學習中心
Flex程序示例
prototype1.5.0中文API在線版
SpringSide---企業應用的開源構件庫
搜索
積分與排名
積分 - 116205
排名 - 504
最新隨筆
1.?PostgreSQL 數據庫性能提升的幾個方面
2.?收藏微軟面試智力題 (附答案)
3.?struts2.0 + ajax + xml (附源碼)
4.?經典收藏----和大家一同分享
5.?嘗試Flex3 令人振奮的新功能——framework持久化緩存
6.?LOG4J 之經典篇
7.?swing 選擇日期控件
8.?探討J2EE開發框架-----高手留言
9.?struts 2.0 + 原始 AJAX + XML
最新評論
1.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--月月鳥
2.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--月月鳥
3.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--pt
4.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--pt
5.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--pt
6.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--pt
7.?re: PostgreSQL 數據庫性能提升的幾個方面
黃金時時彩全能計劃王
黃金時時彩全能計劃王
--pt
8.?re: swing 選擇日期控件
@交口稱贊 郵箱arvinsw521403@163.com
--zhangyi
9.?re: swing 選擇日期控件
@交口稱贊 求下拉出時間的代碼!感激不盡
--zhangyi
10.?re: PostgreSQL 數據庫性能提升的幾個方面
評論內容較長,點擊標題查看
--pt
評論排行榜
1.?收藏微軟面試智力題 (附答案)(104)
2.?struts2.0 + ajax + xml (附源碼)(17)
3.?swing 選擇日期控件(13)
4.?探討J2EE開發框架-----高手留言(10)
5.?struts 2.0 + 原始 AJAX + XML(9)
6.?LOG4J 之經典篇(7)
7.?嘗試Flex3 令人振奮的新功能——framework持久化緩存(3)
8.?經典收藏----和大家一同分享(1)
主站蜘蛛池模板:
免费的一级片网站
|
亚洲av最新在线网址
|
国产精品内射视频免费
|
亚洲精品高清久久
|
四虎影视www四虎免费
|
好男人资源在线WWW免费
|
亚洲熟妇色自偷自拍另类
|
日韩中文无码有码免费视频
|
午夜影院免费观看
|
亚洲视频无码高清在线
|
久久久久亚洲精品男人的天堂
|
免费国产黄网站在线观看视频
|
国产亚洲情侣久久精品
|
亚洲国产精品无码av
|
全免费a级毛片免费**视频
|
a级毛片毛片免费观看永久
|
亚洲天然素人无码专区
|
国产成人亚洲精品狼色在线
|
无码中文在线二区免费
|
两个人看的www视频免费完整版
|
亚洲kkk4444在线观看
|
亚洲产国偷V产偷V自拍色戒
|
日韩在线a视频免费播放
|
免费无码毛片一区二区APP
|
国产精品免费大片一区二区
|
日韩亚洲国产综合高清
|
五月天网站亚洲小说
|
亚洲国产日韩成人综合天堂
|
好先生在线观看免费播放
|
一级毛片免费毛片一级毛片免费
|
国产在亚洲线视频观看
|
亚洲综合精品第一页
|
亚洲视频一区调教
|
伊人亚洲综合青草青草久热
|
日韩免费电影在线观看
|
黄页网站在线看免费
|
中文字幕成人免费视频
|
a级毛片免费全部播放无码
|
特级毛片aaaa免费观看
|
色五月五月丁香亚洲综合网
|
亚洲精品亚洲人成在线播放
|