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".log""/> 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".log""/> 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的属性:复制到输出目录设置为:始终复制
第六步:调用:新建一个按制器进行调用:
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
浙公网安备 33010602011771号