寒江雪
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
月月鳥
閱讀(2538)
評論(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:
博客園
模板提供:
滬江博客
<
2010年7月
>
日
一
二
三
四
五
六
27
28
29
30
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
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(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---企業應用的開源構件庫
搜索
積分與排名
積分 - 116234
排名 - 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)
主站蜘蛛池模板:
精品人妻系列无码人妻免费视频
|
亚洲免费无码在线
|
国产一区二区三区免费
|
日本亚洲中午字幕乱码
|
亚洲国产福利精品一区二区
|
国产亚洲精品不卡在线
|
免费a级毛片无码av
|
青青草国产免费久久久下载
|
91久久精品国产免费直播
|
无码日韩精品一区二区免费暖暖
|
一级做a爰片久久毛片免费看
|
亚洲av日韩专区在线观看
|
亚洲中文无码mv
|
亚洲一区免费在线观看
|
亚洲黄色网址大全
|
亚洲网站在线观看
|
亚洲Aⅴ无码专区在线观看q
|
久久久久亚洲爆乳少妇无
|
亚洲中文无韩国r级电影
|
亚洲午夜精品在线
|
亚洲专区先锋影音
|
久久亚洲AV成人无码软件
|
亚洲欧洲日产专区
|
亚洲国产精品综合久久久
|
91在线精品亚洲一区二区
|
亚洲特级aaaaaa毛片
|
亚洲精品福利在线观看
|
亚洲精品国产专区91在线
|
亚洲成人午夜电影
|
亚洲宅男天堂a在线
|
亚洲av永久无码嘿嘿嘿
|
亚洲国产日韩综合久久精品
|
亚洲人成电影网站免费
|
日韩欧美亚洲国产精品字幕久久久
|
亚洲啪AV永久无码精品放毛片
|
亚洲精品国产suv一区88
|
另类专区另类专区亚洲
|
一级做a爰片久久毛片免费陪
|
免费无码黄网站在线观看
|
麻豆国产入口在线观看免费
|
国产特级淫片免费看
|