原文:《使用log4net,沒有日誌文件生成》 Posted on 2014/06/12html
================================================================================apache
log4net主頁:Apache log4net: Homeapp
上週剛學習了下用法,參考Apache log4net Manual: Configuration一步步配置下來,運行正常。學習
而後我把配置寫到app.config中,並把.exe和須要的.dll拷到其餘目錄中,一運行發現沒有日誌文件生成。今天從新看了一遍Apache log4net Manual: Configuration,忽然發現工程編譯後還產生了一個.exe.config的文件。裏面就是原先app.config中的內容,連同該文件一同拷貝到另外目錄就能夠正常運行了。spa
配置以下:日誌
AssemblyInfo.cs:code
[assembly: log4net.Config.XmlConfigurator(Watch=true)]
App.config:xml
1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 <configSections> 4 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" /> 5 </configSections> 6 7 <log4net> 8 <appender name="Console" type="log4net.Appender.ConsoleAppender"> 9 <layout type="log4net.Layout.PatternLayout"> 10 <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" /> 11 </layout> 12 </appender> 13 <appender name="RollingFile" type="log4net.Appender.RollingFileAppender"> 14 <file value="example.log" /> 15 <appendToFile value="true" /> 16 <maximumFileSize value="100KB" /> 17 <maxSizeRollBackups value="2" /> 18 <layout type="log4net.Layout.PatternLayout"> 19 <conversionPattern value="%level %thread %logger - %message%newline" /> 20 </layout> 21 </appender> 22 <root> 23 <level value="DEBUG" /> 24 <appender-ref ref="Console" /> 25 <appender-ref ref="RollingFile" /> 26 </root> 27 </log4net> 28 </configuration>
Program.cshtm
1 using log4net; 2 using log4net.Config; 3 4 namespace ConsoleApplication5 5 { 6 class MyApp 7 { 8 private static readonly ILog log = LogManager.GetLogger(typeof(MyApp)); 9 10 static void Main(string[] args) 11 { 12 //BasicConfigurator.Configure(); 13 //XmlConfigurator.Configure(); 14 15 log.Info("Entering application."); 16 } 17 } 18 }
===================================================================blog
Update: 2014-10-22
配置RollingFileAppender:根據設置的文件大小最大值Roll,限制全部日誌文件總大小。
以下,追加到文件尾、全部日誌文件總大小限制爲1GB = (RollBackup文件數最大值15 + 在工做狀態的日誌文件)*64MB;
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender"> <appendToFile value="true" /> <maximumFileSize value="64MB" /> <maxSizeRollBackups value="15" /> <rollingStyle value="Size"/> ... </appender>
RollingFileAppender.RollingStyle
【END】