程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> log4net的使用

log4net的使用

編輯:C#入門知識

1、項目中添加一個配置文件Log4Net.config
<?xml version="1.0" encoding="UTF-8"?>
<log4net debug="false">

   <!--按日期分割日志文件 一天一個-->
  <appender name="LogFileAppenderByDate" type="log4net.Appender.RollingFileAppender" >

    <!--是否續寫-->
    <param name="AppendToFile" value="true" />
    <!--最小鎖定模型以允許多個進程可以寫入同一個文件-->
    <param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock" />
    <param name="StaticLogFileName" value="true" />
   
    <param name="File" value="Log\\" />
    <param name="DatePattern" value="yyyy-MM-dd.LOG" />
    <param name="StaticLogFileName" value="false" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="發生時間:%d %n事件級別:%level %n相關類名:%c%n程序文件:%F 第%L行%n日志內容:%m%n-----------------------------------------%n%n" />
    </layout>
  </appender>
 
  <!--按日志容量分割日志文件 10240KB一個-->
  <appender name="LogFileAppenderBySize" type="log4net.Appender.RollingFileAppender" >

    <!--是否續寫-->
    <param name="AppendToFile" value="true" />
    <!--最小鎖定模型以允許多個進程可以寫入同一個文件-->
    <param name="LockingModel" value="log4net.Appender.FileAppender.MinimalLock" />

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

    <!--按照文件的大小進行變換日志文件-->
    <param name="RollingStyle" value="Size" />
    <param name="File" value="Log\\log.txt" />
    <!--單個文件最大數量 好像只有在 按Size分割時有效-->
    <param name="MaximumFileSize" value="5000KB"/>
    <!--保留的log文件數量 超過此數量後 自動刪除之前的   好像只有在 按Size分割時有效-->
    <param name="MaxSizeRollBackups" value="500" />
   
    <param name="StaticLogFileName" value="false" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="發生時間:%d %n事件級別:%level %n相關類名:%c%n程序文件:%F 第%L行%n日志內容:%m%n-----------------------------------------%n%n" />
    </layout>
  </appender>
 
  <root>
    <level value="INFO" />
    <!--啟用按日期分割-->

    <!--<appender-ref ref="LogFileAppenderByDate" />—>
    <!--啟用按容量分割-->
    <appender-ref ref="LogFileAppenderBySize" />
  </root>
</log4net>

 
2、在AssemblyInfo.cs添加
[assembly: log4net.Config.DOMConfigurator(ConfigFile = "Log4Net.config", Watch = true)]
 
 
3、在Global.asax中
protected void Application_Start(object sender, EventArgs e)
{
    // 在應用程序啟動時運行的代碼
    //配置log4net
    log4net.Config.DOMConfigurator.Configure();
}

 
4、調用
public static readonly ILog Log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

Log.Warn("出錯了!", ex);


 

摘自 Viky 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved