寒江雪
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年9月
>
日
一
二
三
四
五
六
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
1
2
3
4
5
6
7
8
9
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(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ⅴ综合网
|
青柠影视在线观看免费高清
|
亚洲欧洲一区二区
|
全免费一级毛片在线播放
|
国产传媒在线观看视频免费观看
|
美女的胸又黄又www网站免费
|
亚洲成人一区二区
|
国产麻豆成人传媒免费观看
|
日韩亚洲产在线观看
|
中文字幕第13亚洲另类
|
亚洲三级在线免费观看
|
污污视频免费观看网站
|
亚洲视频一区二区在线观看
|
国产嫩草影院精品免费网址
|
99久久综合精品免费
|
精品一区二区三区无码免费直播
|
亚洲成AV人片在线观看ww
|
在线观看日本免费a∨视频
|
久草免费福利在线
|
亚洲欧洲日产国码久在线
|
久久精品国产亚洲香蕉
|
国产jizzjizz视频免费看
|
日韩欧毛片免费视频
|
国产成人免费ā片在线观看老同学
|
亚洲国产成人无码AV在线
|
中文字幕在线观看亚洲
|
国产亚洲精品成人AA片新蒲金
|
免费看又黄又无码的网站
|
国产精品高清免费网站
|
亚洲欧美国产日韩av野草社区
|
亚洲国产一区二区a毛片
|
亚洲中文字幕伊人久久无码
|
久久久久久国产精品免费免费
|
免费视频成人片在线观看
|
51午夜精品免费视频
|
免费人成网上在线观看
|