Asp.net中使用log4Net的配置

log4NET的配置

Asp.net中使用log4Net的配置:

 

对于一个大型网站与系统来说,日志是必备的工具,通过日志你可以非常清楚程序的运行情况,及时得到反馈来解决问题,下面介绍ASP.NET版本的log4Net日志组件是个非常强大的工具,最新版本for .net2.0 .0

 

本人搞了一天,终于知道搞清楚怎样使用了,简单记录一下。

 

以下介绍的方法是log4net使用单独的配置文件的。

 

开始行动:

 

第一步:在项目引用log4net.dll文件

 

第二步:

 

      在Web.config文件中加入一句代码,位置如下:

 

<configuration>

    <configSections>

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

    </configSections>

</configuration>

 

第三步:

 

      建立一个单独的配置文件,文件名为:log4net.config

 

      (这个配置文件会在App_Data目录下按日期每天产生一个日志文件,如:Logs_20090703.txt)

 

log4net.config配置文件内容:

 

log4net.config Code [http://www.xueit.com]

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

<log4net>

<!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->

<!-- Set root logger level to ERROR and its appenders -->

<root>

    <level value="ALL"/>

    <appender-ref ref="SysAppender"/>

</root>

 

<!-- Print only messages of level DEBUG or above in the packages -->

<logger name="WebLogger">

    <level value="DEBUG"/>

</logger>

 

<appender name="SysAppender" type="log4net.Appender.RollingFileAppender,log4net" >

    <param name="File" value="App_Data/" />

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

    <param name="RollingStyle" value="Date" />

    <param name="DatePattern" value="&quot;Logs_&quot;yyyyMMdd&quot;.txt&quot;" />

    <param name="StaticLogFileName" value="false" />

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

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

      <param name="Header" value="&#13;&#10;----------------------header--------------------------&#13;&#10;" />

      <param name="Footer" value="&#13;&#10;----------------------footer--------------------------&#13;&#10;" />

    </layout>

</appender>

<appender name="consoleApp" type="log4net.Appender.ConsoleAppender,log4net">

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

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

    </layout>

</appender>

</log4net>

 

第四步:(这步很关键)

 

在文件AssemblyInfo.cs加入一句代码,AssemblyInfo.cs的路径所在Properties目录下

 

加入的代码如下:

 

// 日志组件配置

[assembly: log4net.Config.DOMConfigurator(ConfigFile = "log4net.config", Watch = true)]

 

第五步:开始使用log4net的.cs代码

 

先引入:

 

using log4net;

 

代码:

 

object o = ConfigurationSettings.GetConfig("log4net");

log4net.Config.DOMConfigurator.Configure(o as System.Xml.XmlElement);

 

log4net.ILog logger = log4net.LogManager.GetLogger("WebLogger");

logger.Debug("调试");

logger.Error("这是一个错误日志");

logger.Fatal("这是一个致命的错误日志");

logger.Warn("这是一条警告日志");

logger.Info("这是一条普通信息");

 

就这么简单完成了。

 

下面说下配置文件按大小自动切割多个文件的方法。

 

log4net.config单独配置文件(按大小)的内容如下:

 

log4net.config Code [http://www.xueit.com]

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

<log4net>

<!-- OFF, FATAL, ERROR, WARN, INFO, DEBUG, ALL -->

<!-- Set root logger level to ERROR and its appenders -->

<root>

    <level value="ALL"/>

    <appender-ref ref="SysAppender"/>

</root>

 

<!-- Print only messages of level DEBUG or above in the packages -->

<logger name="WebLogger">

    <level value="DEBUG"/>

</logger>

 

<appender name="SysAppender" type="log4net.Appender.RollingFileAppender">

    <param name="File" value="App_Data\Logs.txt"/>

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

    <param name="MaxSizeRollBackups" value="12"/> <!-- 切割最多文件数 -->

    <param name="MaximumFileSize" value="500KB"/> <!-- 每个文件的大小 -->

    <param name="RollingStyle" value="Size"/>

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

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

      <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n"/>

    </layout>

</appender>

</log4net>

文章来自学IT网:http://www.xueit.com/asp.net/show-5223-2.aspx

转载于:https://www.cnblogs.com/yuanye0918/p/Aspnet%e4%b8%ad%e4%bd%bf%e7%94%a8log4Net%e7%9a%84%e9%85%8d%e7%bd%ae.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值