寒江雪
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---企業應用的開源構件庫
搜索
積分與排名
積分 - 116204
排名 - 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片不卡在线观看
|
久久久久亚洲精品成人网小说
|
国产亚洲综合久久
|
嫩草影院免费观看
|
亚洲AV永久无码精品网站在线观看
|
亚洲av日韩av无码黑人
|
a毛片久久免费观看
|
亚洲AV综合色一区二区三区
|
日本一区午夜艳熟免费
|
亚洲国产综合无码一区
|
四虎影视成人永久免费观看视频
|
亚洲v高清理论电影
|
国产大片免费网站不卡美女
|
亚洲一级片在线播放
|
高清国语自产拍免费视频国产
|
亚洲a无码综合a国产av中文
|
yy6080亚洲一级理论
|
中文字幕视频免费在线观看
|
亚洲影院天堂中文av色
|
日韩在线a视频免费播放
|
精品韩国亚洲av无码不卡区
|
精品国产亚洲一区二区在线观看
|
国产日韩AV免费无码一区二区
|
亚洲精品高清久久
|
成年性羞羞视频免费观看无限
|
国产精品亚洲精品日韩电影
|
国产亚洲精品精品国产亚洲综合
|
亚洲午夜免费视频
|
亚洲av永久中文无码精品
|
久久久久亚洲精品男人的天堂
|
91精品免费高清在线
|
国产亚洲福利一区二区免费看
|
久久综合日韩亚洲精品色
|
在线观看免费宅男视频
|
国产免费播放一区二区
|
亚洲一级毛片免费看
|
亚洲日本中文字幕天堂网
|
99久久国产热无码精品免费
|
成人免费夜片在线观看
|
亚洲专区一路线二
|
亚洲情XO亚洲色XO无码
|