只是記錄不描述。 詳細看官方網站。
Winform
<section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
Web
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
<log4net> <appender name="FileAppender" type="log4net.Appender.RollingFileAppender"> <file value="log/Log.txt" /> <appendToFile value="true" /> <rollingStyle value="Date" /> <datePattern value="yyyyMMdd".txt"" /> <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger - %message%n" /> </layout> </appender> <root> <level value="INFO" /> <appender-ref ref="FileAppender" /> </root> </log4net>
在Namespace的上方寫一個,那個Dll 需要就要往那個dll加。
Winform or Dll 需要加入下面一項,一般加入Assembly.cs
[assembly: XmlConfigurator(Watch = true)] namespace namespace {
}
LOG Level
OFF>FATAL > ERROR > WARN > INFO > DEBUG > ALL
不鎖死文件:<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
變量集合
%newline%
Filter
在appender裏面的filter,我一般用於分離輸出的,如Error Fatal一個文件,INFO WARN一個文件之類的。
下面這個是隻輸出 WARN 和 INFO信息。 最後一個的DenyAllFilter 是必須的。Value不區分大小寫,很有Microsoft的風格。
<filter type="log4net.Filter.LevelMatchFilter">
<param name="LevelToMatch" value="WARN" />
</filter>
<filter type="log4net.Filter.LevelMatchFilter">
<param name="LevelToMatch" value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />