在ASP.NET MVC5中如何使用Apache log4net 类库来记录日志

在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法。 好东东和大家一起分享。

简介:

在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法。尤其在应用程序出错的时候,日志是我们最需要的文件。不管是在web,winform,windowsphone。

这里我们将一步一步讲解如何在ASP.NET MVC5应用程序中使用Apache log4net 框架来记录日志。

我用的是 Visual Studio Express 2013 和.NET framework 4.5.

第一步:

打开 Visual Studio 2013 创建一个新的ASP.NET应用程序选择MVC 模板.

第二步:

在这个应用程序例子中,我们将使用Apache log4net 框架来记录日志. 我们需要通过 NuGet package manager引用 log4net DLL .

  • In VS 2013 Solution Explorer -> 右击Reference 并 选择Manage NuGet Packages.
  • 查找 ‘log4net’ 然后安装.

如果安装成功,我们就能够在引用段下面看到如下图:

第三步:

接下来我们就要配置我们的应用程序来使用Log4Net了。把下面这行代码加在解决方案下的startup.cs 文件中, 或加到global.asax.cs中也可。

 

1 [assembly: log4net.Config.XmlConfigurator(ConfigFile = "Web.config", Watch = true)]

 

第四步:

 web.config文件中添加下面一节内容:

复制代码
 1 <configSections>
 2     <!-- Add log4net config section-->
 3     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,     log4net" />
 4   </configSections>
 5 
 6   <log4net debug="true">
 7     <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
 8       <file value="logs\log.txt" />
 9       <appendToFile value="true" />
10       <rollingStyle value="Size" />
11       <maxSizeRollBackups value="10" />
12       <maximumFileSize value="10MB" />
13       <staticLogFileName value="true" />
14       <layout type="log4net.Layout.PatternLayout">
15         <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" />
16       </layout>
17     </appender>
18 
19     <root>
20       <level value="DEBUG" />
21       <appender-ref ref="RollingLogFileAppender" />
22     </root>
23   </log4net>
复制代码

以上是以文件大小来切割日志,10Mb自动生成下一个日志文件。 

同时也可以以日期生成日志文件,具体使用如下block的配置。

 <log4net debug="true">
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <file value="logs\\" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="10MB" />
      <staticLogFileName value="false" />
      <DatePattern value="yyyyMMdd".log"" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" />
      </layout>
    </appender>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="RollingLogFileAppender" />
    </root>
  </log4net>

第五步:

修改Global.asax.cs文件把下面这段代码添加在Application_Start() 函数里面:

log4net.Config.XmlConfigurator.Configure(new FileInfo(Server.MapPath("~/Web.config")));

到此,我们已经完成配置。

第六步:

在我们想添加日志的类中添加如下记录日志声明:

readonly log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

第七步:

使用logger.Error()方法来给我们想加日志的地方添加日志。

运行该程序我们就可以看到应用程序根目录下(webconfig文件配置的位置) 的logs文件夹下生成的日志了 。




  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值