寒江雪
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
月月鳥
閱讀(2537)
評論(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---企業應用的開源構件庫
搜索
積分與排名
積分 - 116229
排名 - 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)
主站蜘蛛池模板:
亚洲熟伦熟女专区hd高清
|
国产一区二区三区免费观看在线
|
在线视频亚洲一区
|
亚洲日本中文字幕天天更新
|
精品国产亚洲一区二区三区在线观看
|
在线看亚洲十八禁网站
|
a毛片免费全部播放完整成
|
131美女爱做免费毛片
|
韩国欧洲一级毛片免费
|
亚洲人成人一区二区三区
|
亚洲综合网美国十次
|
国产亚洲综合一区二区三区
|
APP在线免费观看视频
|
一二三四在线观看免费高清中文在线观看
|
成人毛片18女人毛片免费
|
午夜亚洲福利在线老司机
|
久久久久无码精品亚洲日韩
|
美女裸体无遮挡免费视频网站
|
a毛片免费全部在线播放**
|
免费在线看v网址
|
久久亚洲国产精品123区
|
亚洲国产中文在线视频
|
亚洲免费视频在线观看
|
国产成人在线观看免费网站
|
亚洲综合精品香蕉久久网97
|
特级av毛片免费观看
|
97在线视频免费
|
免费在线观看黄网
|
亚洲an日韩专区在线
|
在线观看人成视频免费无遮挡
|
全免费a级毛片免费**视频
|
亚洲av午夜成人片精品网站
|
亚洲AV第一成肉网
|
亚洲免费视频观看
|
亚洲AV无码成人网站久久精品大
|
青青青亚洲精品国产
|
无遮免费网站在线入口
|
午夜影视日本亚洲欧洲精品一区
|
又黄又大的激情视频在线观看免费视频社区在线
|
99re6热视频精品免费观看
|
免费国产人做人视频在线观看
|