如何使用Apache log4net库与ASP.NET MVC 5日志记录

来源:互联网 发布:php怎么用 编辑:程序博客网 时间:2024/05/22 09:44

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

简介:

在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法。尤其在应用程序出错的时候,日志是我们最需要的文件。不管是在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 文件中。

 

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

纠正:这段代码最好加在AssemblyInfo.cs 里

 

第四步:

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

<configSections>    <!-- Add log4net config section-->    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />  </configSections>  <log4net debug="true">    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">      <file value="logs\log.txt" />      <appendToFile value="true" />      <rollingStyle value="Size" />      <maxSizeRollBackups value="10" />      <maximumFileSize value="10MB" />      <staticLogFileName value="true" />      <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文件夹下生成的日志了 。

1 0
原创粉丝点击