LOG4 MVC4初体验 webapi项目下接下载项目文件配置则可使用 HPAPI项目得到应用

实现log1四步走:

第一步:创建mvc4新项目

第二步:在项目引用Log4所需引用程序:步骤:选中项目右点击-----选择“管理NUGET程序管理包”--------在搜索栏输入Common.Logging.Log4Net1211进行搜索并加载

加载成功后你可以看到已引用了以下程序集:

第三步:在Web.config配置以下设置:注意配置的位置:

在configSections增加以下配置

1   <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
2     <sectionGroup name="common">
3       <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
4     </sectionGroup>

在节点增加下面配置:

  <common>
    <logging>
      <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net1211">
        <arg key="configType" value="FILE-WATCH" />
        <arg key="configFile" value="~/App_Data/Config/log4net.xml" />
        <!--
         <arg key="configType" value="FILE-WATCH" />只是多了一个监视外部配置文件的变动功能,如果有变动则重新加载配置。
        <arg key="configFile" value="~/App_Data/Config/log4net.xml" />:使用外置配置文件 (<arg key="configFile" 
        value="外部配置文件"),
       -->
      </factoryAdapter>
    </logging>
  </common>

第五步:因为common节点定议的加载外部文件的路径:因为在对应的路径下需要增加外部文件路径<arg key="configFile" value="~/App_Data/Config/log4net.xml" />

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <log4net>
 3 
 4   <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender, log4net">
 5     <param name="File" value="App_Data\log\log" />
 6     <param name="AppendToFile" value="true"/>
 7     <param name="MaxSizeRollBackups" value="100"/>
 8     <param name="StaticLogFileName" value="false"/>
 9     <param name="DatePattern" value="yyyy-MM-dd&quot;.log&quot;"/>
10     <param name="RollingStyle" value="Date"/>
11     <Encoding value="UTF-8" />
12     <layout type="log4net.Layout.PatternLayout">
13       <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>
14     </layout>
15   </appender>
16 
17   <appender name="SpeedLogFileAppender" type="log4net.Appender.RollingFileAppender">
18 
19     <param name="File" value="App_Data\speedlog\"/>
20     <param name="AppendToFile" value="true"/>
21     <param name="MaxSizeRollBackups" value="100"/>
22     <param name="StaticLogFileName" value="false"/>
23     <param name="DatePattern" value="yyyy-MM-dd-HH&quot;.log&quot;"/>
24     <param name="RollingStyle" value="Date"/>
25     <Encoding value="UTF-8" />
26     <layout type="log4net.Layout.PatternLayout">
27       <param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n"/>
28     </layout>
29   </appender>
30 
31   <root>
32     <level value="all" />
33     <appender-ref ref="RollingLogFileAppender" />
34   </root>
35 
36   <logger name="speed" additivity="false">
37     <level value="ALL" />
38     <appender-ref ref="SpeedLogFileAppender" />
39   </logger>
40 </log4net>
log4net.xml

需要注意的是:要把log4net.xml的属性:复制到输出目录设置为:始终复制

 

第六步:调用:新建一个按制器进行调用:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Log4.Controllers
{
    public class HomeController : Controller
    {
        //
        // GET: /Home/
        public static readonly Common.Logging.ILog speed = Common.Logging.LogManager.GetLogger("speed");
        public ActionResult Index()
        {
            speed.Error("报错");
            return View();
        }

    }
}

注意点:ILog引用的是Common.Logging.ILog

运行后可以睇到在对应的目录下睇到日志:

 项目下载地址:http://pan.baidu.com/s/1ntRikPj

posted on 2015-12-25 16:29  高达  阅读(345)  评论(0)    收藏  举报

导航