【转发】MVC Log4net

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 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日志并进行多维度分析。
相关文章
|
前端开发 中间件 .NET
asp.net core mvc 中间件之路由
asp.net core mvc 中间件之路由 路由中间件 首先看路由中间件的源码 先用httpContext实例化一个路由上下文,然后把中间件接收到的路由添加到路由上下文的路由集合 然后把路由上下文作为参数,调用IRouter.
1237 5
|
Web App开发 前端开发 .NET
一起谈.NET技术,ASP.NET MVC Routing概述
  ASP.NET Routing模块的责任是将传入的浏览器请求映射为特有的MVC controller actions。  使用默认的Route Table  当你创建一个新的ASP.NET MVC应用程序,这个应用程序已经被配置用来使用ASP.NET Routing。
1022 0
|
Web App开发 前端开发 .NET
一起谈.NET技术,一个MVC分页Helper
  本人写的一个分页Helper,支持普通分页(也就是,首页、上一页、下一页、末页等),综合分页(普通分页和数字分页的综合)。下面是分页效果: 分页代码: PagerHelper.cs 代码   1 using System;  2  using System.
829 0
|
Web App开发 前端开发 .NET
一起谈.NET技术,ASP.NET MVC2中Controller向View传递数据的三种方式
  在Asp.net mvc开发中,Controller需要向View提供Model,然后View将此Model渲染成HTML。这篇文章介绍三种由Controller向View传递数据的方式,实现一个DropDownList的显示。
957 0
|
前端开发 .NET 图形学
一起谈.NET技术,ASP.NET MVC3 Service Location
  介绍   ASP.NET MVC3 的一个重要的新特性就是允许注册一个服务点 Service Location,然后在框架中使用的能力。以前版本的 MVC 已经提供了 Service Location 和依赖注入的机会,在 MVC3 中,我们正式提供了这种能力,并且为开发者开放了多种使用的机会。
941 0
|
前端开发