首页  ·  知识 ·  云计算
log4net的使用
Viky    综合  编辑:dezai   图片来源:网络
log4net的使用

1、项目中添加一个配置文件Log4Net.config

<?xml version="1.0" encoding="UTF-8"?> 
<log4net debug="false">

<!--按日期分割日志文件 一天一个-->
<appender name="LogFileAppenderByDate" type="log4net.Appender.RollingFileAppender" >

<!--是否续写-->
<param name="AppendToFile" value="true" />
<!--最小锁定模型以允许多个进程可以写入同一个文件-->
<param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock" />
<param name="StaticLogFileName" value="true" />

<param name="File" value="Log\\" />
<param name="DatePattern" value="yyyy-MM-dd.LOG" />
<param name="StaticLogFileName" value="false" />
<param name="RollingStyle" value="Date" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="发生时间:%d %n事件级别:%level %n相关类名:%c%n程序文件:%F 第%L行%n日志内容:%m%n-----------------------------------------%n%n" />
</layout>
</appender>

<!--按日志容量分割日志文件 10240KB一个-->
<appender name="LogFileAppenderBySize" type="log4net.Appender.RollingFileAppender" >

<!--是否续写-->
<param name="AppendToFile" value="true" />
<!--最小锁定模型以允许多个进程可以写入同一个文件-->
<param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock" />

<param name="StaticLogFileName" value="true" />

<!--按照文件的大小进行变换日志文件-->
<param name="RollingStyle" value="Size" />
<param name="File" value="Log\\log.txt" />
<!--单个文件最大数量 好像只有在 按Size分割时有效-->
<param name="MaximumFileSize" value="5000KB"/>
<!--保留的log文件数量 超过此数量后 自动删除之前的 好像只有在 按Size分割时有效-->
<param name="MaxSizeRollBackups" value="500" />

<param name="StaticLogFileName" value="false" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="发生时间:%d %n事件级别:%level %n相关类名:%c%n程序文件:%F 第%L行%n日志内容:%m%n-----------------------------------------%n%n" />
</layout>
</appender>

<root>
<level value="INFO" />
<!--启用按日期分割-->

<!--<appender-ref ref="LogFileAppenderByDate" />—>
<!--启用按容量分割
-->
<appender-ref ref="LogFileAppenderBySize" />
</root>
</log4net>

 

2、在AssemblyInfo.cs添加

[assembly: log4net.Config.DOMConfigurator(ConfigFile = "Log4Net.config", Watch = true)]

 

 

3、在Global.asax中

protected void Application_Start(object sender, EventArgs e) 
{
// 在应用程序启动时运行的代码
//配置log4net
log4net.Config.DOMConfigurator.Configure();
}

 

4、调用

public static readonly ILog Log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

Log.Warn("出错了!", ex);
本文作者:Viky 来源:网络
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读