【转发】MVC Log4net

简介: 1.引用log4net库类 2.写配置,我一般是写在web.config ...

1.引用log4net库类

2.写配置,我一般是写在web.config

<configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>
  <log4net debug="true">
    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
      <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="ERROR" />
      </filter>
      <filter type="log4net.Filter.DenyAllFilter" />
      <!--日志文件名开头-->
      <file value="..\\Logs\\Error\\" />
      <!--是否追加到文件-->
      <appendToFile value="true" />
      <!--混合使用日期和文件大小变换日志文件名-->
      <rollingStyle value="Composite" />
      <!--最大变换数量-->
      <maxSizeRollBackups value="10"/>
      <!--最大文件大小-->
      <maximumFileSize value="500KB"/>
      <!--日期的格式-->
      <staticLogFileName value="false" />
      <datePattern value="yyyyMMdd".log"" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date  %logger : %message%newline" />
      </layout>
    </appender>
    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
      <filter type="log4net.Filter.LevelMatchFilter">
        <levelToMatch value="INFO" />
      </filter>
      <filter type="log4net.Filter.DenyAllFilter" />
      <!--日志文件名开头-->
      <file value="..\\Logs\\Info\\" />
      <!--是否追加到文件-->
      <appendToFile value="true" />
      <!--混合使用日期和文件大小变换日志文件名-->
      <rollingStyle value="Composite" />
      <!--最大变换数量-->
      <maxSizeRollBackups value="10"/>
      <!--最大文件大小-->
      <maximumFileSize value="500KB"/>
      <!--日期的格式-->
      <staticLogFileName value="false" />
      <datePattern value="yyyyMMdd".log"" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date  %logger : %message%newline" />
      </layout>
    </appender>
    <root>
      <level value="All" />
      <appender-ref ref="ErrorAppender" />
      <appender-ref ref="InfoAppender" />
    </root>
  </log4net>

3.在项目的AssemblyInfo最后加上[

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

4.在Application_Start()中加上

 string l4net = Server.MapPath("~/Web.config");
log4net.Config.XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(l4net));

 

学习交流群:364976091
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
移动开发 API
四:net core(.NET 6)使用Filter过滤器拦截webapi方法
Filter的基本用法 :代码在最下方使用filter过滤器,来实现拦截接口信息。咱们先新建一个项目,在原有的webapi上面,选择添加项目,添加一个类库项目
1001 0
四:net core(.NET 6)使用Filter过滤器拦截webapi方法
|
前端开发
.Net Mvc中Filter过滤器需要注意的坑
<p>  啥也不说,先上代码:</p> <p>  public class ValidateAttribute : ActionFilterAttribute</p> <p>  {</p> <p>  private string _Name=null;</p> <p>  //Action执行前的过滤器</p> <p>  public override void OnActionExecuting(ActionExecutingContext filterContext)</p>
106 0
|
Web App开发 前端开发 .NET
一起谈.NET技术,ASP.NET MVC Routing概述
  ASP.NET Routing模块的责任是将传入的浏览器请求映射为特有的MVC controller actions。  使用默认的Route Table  当你创建一个新的ASP.NET MVC应用程序,这个应用程序已经被配置用来使用ASP.NET Routing。
999 0
|
Web App开发 前端开发 .NET
一起谈.NET技术,ASP.NET MVC2中Controller向View传递数据的三种方式
  在Asp.net mvc开发中,Controller需要向View提供Model,然后View将此Model渲染成HTML。这篇文章介绍三种由Controller向View传递数据的方式,实现一个DropDownList的显示。
931 0
|
前端开发 .NET 图形学
一起谈.NET技术,ASP.NET MVC3 Service Location
  介绍   ASP.NET MVC3 的一个重要的新特性就是允许注册一个服务点 Service Location,然后在框架中使用的能力。以前版本的 MVC 已经提供了 Service Location 和依赖注入的机会,在 MVC3 中,我们正式提供了这种能力,并且为开发者开放了多种使用的机会。
919 0
|
Web App开发 前端开发 .NET
一起谈.NET技术,一个MVC分页Helper
  本人写的一个分页Helper,支持普通分页(也就是,首页、上一页、下一页、末页等),综合分页(普通分页和数字分页的综合)。下面是分页效果: 分页代码: PagerHelper.cs 代码   1 using System;  2  using System.
802 0
|
前端开发 图形学 容器
ASP“.NET研究”.NET MVC3 Service Location
  介绍   ASP.NET MVC3 的一个重要的新特性就是允许注册一个服务点 Service Location,然后在框架中使用的能力。以前版本的 MVC 已经提供了 Service Location 和依赖注入的机会,在 MVC3 中,我们正式提供了这种能力,并且为开发者开放了多种使用的机会。
905 0
|
前端开发 中间件 .NET
asp.net core mvc 中间件之路由
asp.net core mvc 中间件之路由 路由中间件 首先看路由中间件的源码 先用httpContext实例化一个路由上下文,然后把中间件接收到的路由添加到路由上下文的路由集合 然后把路由上下文作为参数,调用IRouter.
1201 1