使用log4net

原文:《使用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】

相關文章
相關標籤/搜索