龙空技术网

WEB必备记录日志的好工具Log4Net及具体配置方法

开发分享 27

前言:

而今姐妹们对“log4net多文件夹”可能比较珍视,兄弟们都想要学习一些“log4net多文件夹”的相关文章。那么小编同时在网摘上网罗了一些有关“log4net多文件夹””的相关文章,希望姐妹们能喜欢,你们快快来了解一下吧!

使用场景:

我们在做网站应用时,很多场景都需要记录日志,比如客人下单出错时,或者是微信支付通知出错时,我们都应该记录好日志,好在出问题的时候,快速找到数据去找问题。因此,这里给大家推荐一个工具Log4Net。

大家也可以在他的官网上找资料,并配置(资料会更新齐全)。

现在我们跟大家说说如何使用及配置:(请看代码)

第一步,配置web.config

<?xml version="1.0" encoding="utf-8"?>

<configuration>

<configSections>

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />

</configSections>

<log4net debug="false">

<appender name="ErrorLogFileAppender" type="log4net.Appender.FileAppender">

<param name="File" value="App_Data/ErrorLog/ErrorLog.log" />

<param name="datePattern" value="yyyy-MM-dd HH:mm" />

<param name="AppendToFile" value="true" />

<layout type="log4net.Layout.PatternLayout">

<param name="ConversionPattern" value="-------Error------------%newline%d %-5p%n %c%n %m%n" />

</layout>

<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />

<filter type="log4net.Filter.LevelRangeFilter">

<param name="LevelMin" value="ERROR" />

<param name="LevelMax" value="ERROR" />

</filter>

</appender>

<appender name="WarnLogFileAppender" type="log4net.Appender.FileAppender">

<param name="File" value="App_Data/ErrorLog/WarnLog.log" />

<param name="datePattern" value="yyyy-MM-dd HH:mm" />

<param name="AppendToFile" value="true" />

<layout type="log4net.Layout.PatternLayout">

<param name="ConversionPattern" value="------%p------------%newline%d %-5p%n %c%n %m%n" />

</layout>

<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />

<filter type="log4net.Filter.LevelRangeFilter">

<param name="LevelMin" value="WARN" />

<param name="LevelMax" value="WARN" />

</filter>

</appender>

<appender name="InfoLogFileAppender" type="log4net.Appender.FileAppender">

<param name="File" value="InfoLog.log" />

<param name="datePattern" value="yyyy-MM-dd HH:mm" />

<param name="AppendToFile" value="true" />

<layout type="log4net.Layout.PatternLayout">

<param name="ConversionPattern" value="-----------------------------%p-----------------------------%newline%d %-5p%n %c%n %m%n" />

</layout>

<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />

<filter type="log4net.Filter.LevelRangeFilter">

<param name="LevelMin" value="INFO" />

<param name="LevelMax" value="INFO" />

</filter>

</appender>

<root>

<level value="ALL" />

<appender-ref ref="ErrorLogFileAppender" />

<appender-ref ref="WarnLogFileAppender" />

<appender-ref ref="InfoLogFileAppender" />

</root>

</log4net>

说几个需要注意的点:

1)在configSections中的section设置好程序集,照上面Copy就行了

2)在<log4net debug="false”>… </log4net>,注意它的文件配置,分别有出错,警告,信息三种不同类型的记录的文件位置

第二步 Global.aspx.cs配置

private static readonly ILog _logger = LogManager.GetLogger(typeof(MvcApplication));

protected void Application_Start(){

log4net.Config.XmlConfigurator.Configure();

}

protected void Application_Error(object sender, EventArgs e) {

bool enableErrorLog;

string form = string.Empty;

enableErrorLog = true;

if (enableErrorLog) {

……

string errorMessage = sb.ToString();

_logger.Error(errorMessage, ex);

}

}

……

以上是当web程序任何地方有错时,均写入到App_Data中设置的出错日志文件中。

如有必要,我们也可能在程序用调用通过调用:

private static readonly ILog _logger = LogManager.GetLogger(typeof(MvcApplication));

_logger.Error(errorMessage, ex);

去实现把出错信息写入文件。

今天就分享到这里了,欢迎大家加我,一起探讨技术问题

标签: #log4net多文件夹 #log4net官网 #log4net配置工具