欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Log4net中的RollingFileAppender解析

系統(tǒng) 2237 0

Log4日志組件的應(yīng)用確實(shí)簡(jiǎn)單實(shí)用,在比較了企業(yè)庫(kù)和Log4的日志功能后,個(gè)人覺(jué)得Log4的功能更加強(qiáng)大點(diǎn).補(bǔ)充說(shuō)明下,我使用的企業(yè)庫(kù)是2.0版本,Log4net是1.2.1版本的.

在Log4net的應(yīng)用上,已經(jīng)有人做了說(shuō)明分析了,在本文中,主要解析下Log4net中的RollingFileAppender的應(yīng)用.

主要參考了Log4net的幫助文檔.在項(xiàng)目中的log4net-1.2.10\doc文件下有.


RollingFileAppender主要是基于FileAppender構(gòu)建的,很多屬性方法都是繼承于FileAppender,所以在選項(xiàng)設(shè)置上,也有許多是相同的.

下面的例子使日志文件名為log.txt,日志文件名是以文件大小進(jìn)行變換的,如果舊日志文件大小到100KB時(shí),就會(huì)變換文件名為log.txt.1,log.txt.2,log.txt.3...,一直到10為止

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">??
??????? <!--日志文件名-->
??? <file value="log.txt"/>
??? <!--是否在文件中追加-->
??? <appendToFile value="true"/>
??? <!--按照文件的大小進(jìn)行變換日志文件-->
??? <rollingStyle value="Size"/>
??? <!--最大變換數(shù)量-->
??? <maxSizeRollBackups value="10"/>
??? <!--最大文件大小-->
??? <maximumFileSize value="100KB"/>
??? <!--日志文件名是否為靜態(tài)-->
??? <staticLogFileName value="true"/>
??? <layout type="log4net.Layout.PatternLayout">
??????? <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
??? </layout>
</appender>
下面的例子以時(shí)間周期變換日志文件名,每分鐘都改變?nèi)罩镜奈募罩疚募麨閘ogfileyyyyMMdd-HHmm,這里補(bǔ)充說(shuō)明下,如果要在這個(gè)文件名后面加上.log后綴,必須使用轉(zhuǎn)義字符,比如<datePattern value="yyyyMMdd-HHmm&quot;.log&quot;" />

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
??????? <!--日志文件名開頭-->
??? <file value="logfile" />
??? <!--是否追加到文件-->
??? <appendToFile value="true" />
??? <!--變換的形式為日期-->
??? <rollingStyle value="Date" />
??? <!--日期的格式-->
??? <datePattern value="yyyyMMdd-HHmm" />
??? <layout type="log4net.Layout.PatternLayout">
??????? <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
??? </layout>
</appender>
下面的例子綜合使用使用日期和文件大小變換日志文件名。

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
??? <!--日志文件名開頭-->
??? <file value="logfile" />
??? <!--是否追加到文件-->
??? <appendToFile value="true" />
??? <!--混合使用日期和文件大小變換日志文件名-->
??? <rollingStyle value="Composite" />
??? <!--日期的格式-->
??? <datePattern value="yyyyMMdd" />
??? <!--最大變換數(shù)量-->
??? <maxSizeRollBackups value="10" />
??? <!--最大文件大小-->
??? <maximumFileSize value="1MB" />
??? <layout type="log4net.Layout.PatternLayout">
??????? <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
??? </layout>
</appender>
下面例子是在每次程序運(yùn)行的時(shí)候,都會(huì)備份原先的日志文件,當(dāng)運(yùn)行的日志文件大于50G的時(shí)候才會(huì)變換日志文件名。

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
??? <!--日志文件名-->
??? <file value="logfile.txt" />
??? <!--不追加到原文件-->
??? <appendToFile value="false" />
??? <!--以日志文件大小變換文件名-->
??? <rollingStyle value="Size" />
??? <!--最大變換數(shù)量,-1為不限制-->
??? <maxSizeRollBackups value="-1" />
??? <!--最大文件大小-->
??? <maximumFileSize value="50GB" />
??? <layout type="log4net.Layout.PatternLayout">
??????? <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
??? </layout>
</appender>
下面是RollingFileAppender類中的部分Public Instance Properties(公共屬性)的說(shuō)明,沒(méi)有全部測(cè)試,難免謬誤,如果你知道,請(qǐng)不要吝嗇告寫。
CountDirection : 定義當(dāng)前文件是最小編號(hào)的文件還是最大編號(hào)的文件。默認(rèn)為-1,總是以更小的編號(hào)。
datePattern : DateFormatter日期格式,string類型。
Encoding : 就是文件的編碼,默認(rèn)為Default,就是程序本身的編碼了。
FilterHead : 分割符頭部。
ImmediateFlush : 表示是否立即輸出到文件,布爾型的。
LockingModel : 文件鎖類型,RollingFileAppender本身不是線程安全的,如果在程序中沒(méi)有進(jìn)行線程安全的限制,可以在這里進(jìn)行配置,確保寫入時(shí)的安全。有兩中類型:FileAppender.ExclusiveLock 和 FileAppender.MinimalLock
Name : 設(shè)置本Appander的名稱。
SecurityContext : 比較少應(yīng)用,對(duì)日志進(jìn)行加密只類的,使用SecurityContextProvider轉(zhuǎn)換。(對(duì)日志的保密要求比較高的時(shí)候應(yīng)該可以應(yīng)用上吧,Log4考慮的還挺周全)
Threshold : 設(shè)置內(nèi)容級(jí)別的,比如:DEBUG,INFO等等。

?

在Log4net的配置中有兩種方法是等價(jià)的:
<param name="File" value="log.txt" /> 和
<File value="log.txt" />
個(gè)人更傾向后者。在一些數(shù)據(jù)庫(kù)上的應(yīng)用時(shí)還有許多Param呢。

?

小結(jié)
Log4的應(yīng)用遠(yuǎn)不止這些,幫助文件也是很詳盡的,在程序級(jí)還是配置級(jí)都有相關(guān)例子。在整理了一個(gè)RollingFileAppender就花了我不少工夫。如果有機(jī)會(huì)接觸到其他的內(nèi)容,我會(huì)繼續(xù)整理出來(lái)。

?

本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/much0726/archive/2009/01/07/3725563.aspx

Log4net中的RollingFileAppender解析


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 免费国产一区二区三区 | 天天综合欧美 | 一区二区国产在线观看 | 爱操影视 | 婷婷六月天 | 在线视频二区 | 五月伊人网 | 国产玖玖 | 黄色免费在线观看网址 | 国产原创视频在线 | 五月综合激情婷婷六月色窝 | 夜夜夜操操操 | 久久久久久久久久综合情日本 | 亚洲在线影院 | 国产精品亚洲成在人线 | 色综合久久天天综合网 | 小明看片成人永久在线观看 | 天天摸天天爽天天澡视频 | 久久精品天堂 | 国产在线永久免费 | 欧美日韩网站 | 人人综合网| 狠狠综合久久 | 毛片搜索 | 久久亚洲日本不卡一区二区 | 久久一本日韩精品中文字幕屁孩 | 唐人社电亚洲一区二区三区 | 日韩在线视频导航 | 午夜精品在线观看 | 久操精品| 国产成人在线一区二区 | 国产精品一码二码三码在线 | 91免费版在线看 | 国产人妻互换一区二区水牛影视 | 亚洲欧美视频网站 | av一区二区在线观看 | 插插插天天| 九九热这里 | 奇米色777 | a毛片视频网站 | 成人免费一级毛片在线播放视频 |