log4net 多文件配置

发布时间 2023-05-10 08:53:17作者: JCLiang

C#

log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(AppDomain.CurrentDomain.BaseDirectory + "App.config"));
testLog = log4net.LogManager.GetLogger("testLog");
warnLog = log4net.LogManager.GetLogger("WarnLog");

 

配置文件:

<log4net>
<root>
<!--从高到低的七个级别:OFF,FATAL,RROR,WARN,INFO,DEBUG,ALL-->
<level value="ALL"/>
</root>
<!--配置程序报错专用-->
<logger name="testLog">
<level value="ALL"/>
<appender-ref ref="testLogApp"/>
</logger>
<appender name="testLogApp" type="log4net.Appender.RollingFileAppender, log4net">
<!--日志路径-->
<param name="File" value="log\"/>
<!--日期为滚动类型(每天产生一个日志文件)-->
<param name="RollingStyle" value="Date"/>
<!--追加方式-->
<param name="AppendToFile" value="true"/>
<!--日志文件名-->
<param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/>
<!--关闭固定文件方式-->
<param name="StaticLogFileName" value="false"/>
<maximumFileSize value="600000KB" />
<!--记录格式-->
<layout type="log4net.Layout.PatternLayout, log4net">
<!--%m:消息内容-->
<!--%n:换行-->
<!--%d:输出时间-->
<!--%p:级别-->
<!--%c:类名-->
<!--%F:文件名-->
<param name="ConversionPattern" value="[%d] %p - %m%n"/>
</layout>
<!--过滤器-->
<filter type="log4net.Filter.LevelRangeFilter, log4net">
<param name="LevelMin" value="ALL"/>
<param name="LevelMax" value="OFF"/>
</filter>
</appender>

<logger name="WarnLog">
<level value="WARN"/>
<appender-ref ref="WarnLogApp"/>
</logger>
<appender name="WarnLogApp" type="log4net.Appender.RollingFileAppender, log4net">
<!--日志路径-->
<param name="File" value="log\"/>
<!--日期为滚动类型(每天产生一个日志文件)-->
<param name="RollingStyle" value="Date"/>
<!--追加方式-->
<param name="AppendToFile" value="true"/>
<!--日志文件名-->
<param name="DatePattern" value="warn_yyyy-MM-dd&quot;.log&quot;"/>
<!--关闭固定文件方式-->
<param name="StaticLogFileName" value="false"/>
<maximumFileSize value="600000KB" />
<!--记录格式-->
<layout type="log4net.Layout.PatternLayout, log4net">
<!--%m:消息内容-->
<!--%n:换行-->
<!--%d:输出时间-->
<!--%p:级别-->
<!--%c:类名-->
<!--%F:文件名-->
<param name="ConversionPattern" value="[%d] %p - %m%n"/>
</layout>
<!--过滤器-->
<filter type="log4net.Filter.LevelRangeFilter, log4net">
<param name="LevelMin" value="ALL"/>
<param name="LevelMax" value="OFF"/>
</filter>
</appender>


</log4net>