log4net的使用方法

這篇文章主要介紹“l(fā)og4net的使用方法”,在日常操作中,相信很多人在log4net的使用方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”log4net的使用方法”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比達(dá)茂旗網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式達(dá)茂旗網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋達(dá)茂旗地區(qū)。費用合理售后完善,十載實體公司更值得信賴。

使用log4net打印日志很方便,以前我都是自己寫日志功能,把錯誤信息寫入到指定文件,使用log4net就省略了這些工作,挺方便的。

使用log4net需要在.config文件中進(jìn)行配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <!--log4net配置節(jié)點-->
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  <log4net debug="false">
    <!--普通日志配置-->
    <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\MyWebLog\LogInfo\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n日志時間:%d %n日志級別:%-5p%n日志內(nèi)容:%m%n" />
      </layout>
    </appender>

    <!--異常信息配置-->
    <appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\MyWebLog\DebugError\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n異常時間:%d %n異常級別:%-5p%n異常內(nèi)容:%m%n" />
      </layout>
    </appender>

    <!--錯誤日志配置-->
    <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\MyWebLog\LogError\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n錯誤時間:%d %n錯誤級別:%-5p%n錯誤內(nèi)容:%m%n" />
      </layout>
    </appender>

    <!--致命錯誤配置-->
    <appender name="FatalAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\MyWebLog\LogFatal\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n致命錯誤時間:%d %n致命錯誤級別:%-5p%n致命錯誤內(nèi)容:%m%n" />
      </layout>
    </appender>

    <!--警告信息配置-->
    <appender name="WarnAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="D:\MyWebLog\LogWarn\" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="100" />
      <param name="MaxFileSize" value="10240" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n警告時間:%d %n警告級別:%-5p%n警告內(nèi)容:%m%n" />
      </layout>
    </appender>
    
    <!--普通日志-->
    <logger name="LogInfo">
      <level value="Info" />
      <appender-ref ref="InfoAppender" />
    </logger>
    
    <!--異常信息-->
    <logger name="LogDebug">
      <level value="Debug" />
      <appender-ref ref="DebugAppender" />
    </logger>
    
    <!--錯誤日志-->
    <logger name="LogError">
      <level value="Error" />
      <appender-ref ref="ErrorAppender" />
    </logger>
    
    <!--致命錯誤-->
    <logger name="LogFatal">
      <level value="Fatal" />
      <appender-ref ref="FatalAppender" />
    </logger>
    
    <!--警告信息-->
    <logger name="LogWarn">
      <level value="Warn" />
      <appender-ref ref="WarnAppender" />
    </logger>
    
  </log4net>
</configuration>
 

配置文件可以使用項目中默認(rèn)的配置文件,也可以新建.config。

1.使用默認(rèn)的配置文件

AssemblyInfo.cs中添加[assembly: log4net.Config.XmlConfigurator()],系統(tǒng)在運行時尋找去默認(rèn)的配置文件中查找log4net的配置節(jié)點

 寫一個幫助類,使用單例模式創(chuàng)建日志對象

    /// <summary>
    /// log4net幫助類
    /// </summary>
    public class LogHelper
    {
        private static ILog logInfo = null;//普通日志
        private static ILog logDebug = null;//異常信息
        private static ILog logError = null;//錯誤日志
        private static ILog logFatal = null;//致命錯誤
        private static ILog logWarn = null;//警告信息

        private LogHelper() { }

        /// <summary>
        /// 普通日志
        /// </summary>
        /// <returns></returns>
        public static ILog GetLogInfo()
        {
            if(logInfo == null)
            {
                logInfo = LogManager.GetLogger("LogInfo");
            }
            return logInfo;
        }

        /// <summary>
        /// 異常信息
        /// </summary>
        /// <returns></returns>
        public static ILog GetLogDebug()
        {
            if (logDebug == null)
            {
                logDebug = LogManager.GetLogger("LogDebug");
            }
            return logDebug;
        }

        /// <summary>
        /// 錯誤日志
        /// </summary>
        /// <returns></returns>
        public static ILog GetLogError()
        {
            if (logError == null)
            {
                logError = LogManager.GetLogger("LogError");
            }
            return logError;
        }


        /// <summary>
        /// 致命錯誤
        /// </summary>
        /// <returns></returns>
        public static ILog GetLogFatal()
        {
            if (logFatal == null)
            {
                logFatal = LogManager.GetLogger("LogFatal");
            }
            return logFatal;
        }


        /// <summary>
        /// 警告信息
        /// </summary>
        /// <returns></returns>
        public static ILog GetLogWarn()
        {
            if (logWarn == null)
            {
                logWarn = LogManager.GetLogger("LogWarn");
            }
            return logWarn;
        }
    }

調(diào)用:

LogHelper.GetLogInfo().Info("輸出信息");

LogHelper.GetLogError().Error("",new Exception());

2.使用新創(chuàng)建的配置文件

public static readonly ILog logInfo = LogManager.GetLogger("LogInfo");//普通日志
public static readonly ILog logDebug = LogManager.GetLogger("LogDebug");//異常信息
public static readonly ILog logError = LogManager.GetLogger("LogError");//錯誤日志
public static readonly ILog logFatal = LogManager.GetLogger("LogFatal");//致命錯誤
public static readonly ILog logWarn = LogManager.GetLogger("LogWarn");//警告信息

手動查找路徑下的配置文件,進(jìn)行讀取,添加一下代碼

/// <summary>
/// 加載log4net的日志配置文件
/// </summary>
/// <param name="configFilePath">日志配置文件的完整路徑</param>
public LogHelper(string configFilePath)
{
    if (string.IsNullOrWhiteSpace(configFilePath) || !File.Exists(configFilePath))
    {
        throw new ArgumentNullException("日志配置文件不存在");
    }
        XmlConfigurator.Configure(new FileInfo(configFilePath));
}

調(diào)用:

LogHelper.logInfo.Info("輸出信息");
LogHelper.logError.Error("輸出信息", new Exception());

到此,關(guān)于“l(fā)og4net的使用方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

分享題目:log4net的使用方法
分享URL:http://bm7419.com/article4/goegoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣網(wǎng)站策劃、企業(yè)網(wǎng)站制作網(wǎng)站導(dǎo)航、網(wǎng)站制作外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)