65.9K
CodeProject 正在变化。 阅读更多。
Home

在 ASP.NET 2.0 中配置 Log4Net

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.41/5 (37投票s)

2006年10月11日

CPOL
viewsIcon

239311

downloadIcon

2632

如何在 ASP.NET 2.0 应用程序中配置 Log4Net。

引言

Log4net 是一个开源工具,用于将日志/报告语句输出到各种目标(文本文件、电子邮件、数据库、事件查看器等):https://logging.apache.ac.cn/。它是一个非常有用的应用程序检测工具。

配置 Log4net

步骤 1:将 Log4net.dll 的引用添加到项目。

步骤 2:如果尚未添加,请将 Global.asax 添加到项目。在 global.asax 的 "Application_Start" 事件中,添加以下代码

log4net.Config.XmlConfigurator.Configure();

步骤 3:在 web.config 文件中,在 Configuration->Configsections 下,添加以下部分

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

步骤 4:在 web.config 中,添加一个新的部分 "<log4net>"。 此部分将包含与 Log4net 配置相关的所有设置。

步骤 5:在 web.config 中,在 "log4net" 部分下,以以下方式添加所需的 appender(输出目标)配置部分

文件 appender 配置,用于将日志语句记录到文本文件中
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
  <param name="File" value="Logs\\Log4Net.log"/>
  <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
  </layout>
</appender>
SMTP appender 配置,用于通过发送电子邮件记录日志语句
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
<to value="" />
<from value="" />
<subject value="" />
<smtpHost value="" />
<bufferSize value="512" />
<lossy value="true" />
<evaluator type="log4net.Core.LevelEvaluator">
<threshold value="WARN"/>
</evaluator>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%newline%date [%thread] %-5level 
          %logger [%property] - %message%newline%newline%newline" />
</layout>
</appender>

步骤 6:在 web.config 文件中,在 "log4net" 部分下,为每个 appender 添加日志记录器,如下所示

<logger name="File">
<level value="All" />
<appender-ref ref="LogFileAppender" />
</logger>
<logger name="EmailLog">
<level value="All" />
<appender-ref ref="SmtpAppender" />
</logger>

步骤 7:现在,每当我们想要记录任何信息/错误/警告时,以以下方式调用适当的方法

//for logging to file
log4net.ILog logger = log4net.LogManager.GetLogger("File");

//for emailing
log4net.ILog logger = log4net.LogManager.GetLogger("EmailLog");

logger.Info("Starting page load");
在 ASP.NET 2.0 中配置 Log4Net - CodeProject - 代码之家
© . All rights reserved.