最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#使用log4net打日志

 更新時間:2022年02月28日 10:58:21   作者:王夢杰.  
本文主要介紹了C#使用log4net打日志,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

首先打開vs,右擊解決方案,點(diǎn)擊管理解決方案的Nuget包管理

然后我們點(diǎn)擊瀏覽,搜索log4net,進(jìn)行安裝

然后我們需要新建一個名為log4net.config的配置文件,在配置文件中,加入以下代碼

	<configSections>
		<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
	</configSections>
	<log4net>
		<!--錯誤日志-->
		//
		<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
			<!-- 日志文件存放位置,可以為絕對路徑也可以為相對路徑 -->
			<file value="log\\LogError\\" />
			<!--是否支持分割文件-->
			<appendToFile value="true" />
			<!--日志文件的記錄形式-->
			<rollingStyle value="Date" />
			<!-- 日志文件的命名規(guī)則 -->
			<datePattern value="yyyy\\yyyyMM\\yyyyMMdd'.txt'" />
			<!-- 當(dāng)將日期作為日志文件的名字時,必須將staticLogFileName的值設(shè)置為false -->
			<staticLogFileName value="false" />
			<!--當(dāng)日志文件達(dá)到MaxFileSize大小,就自動創(chuàng)建備份文件。-->
			<param name="MaxSizeRollBackups" value="100" />
			<!--日志文件的布局格式-->
			<layout type="log4net.Layout.PatternLayout">
				<!--每條日志末尾的文字說明-->
				<!--輸出格式-->
				<!--樣例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
				<conversionPattern value="%newline %n記錄時間:%date %n線程ID:[%thread] %n日志級別:  %-5level %n錯誤描述:%message%newline %n" />
			</layout>
		</appender>
 
		<!--Info日志-->
		<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
			<param name="File" value="Log\\LogInfo\\" />
			<param name="AppendToFile" value="true" />
			<param name="MaxFileSize" value="10240" />
			<param name="MaxSizeRollBackups" value="100" />
			<param name="StaticLogFileName" value="false" />
			<param name="DatePattern" value="yyyy\\yyyyMM\\yyyyMMdd'.txt'" />
			<param name="RollingStyle" value="Date" />
			<layout type="log4net.Layout.PatternLayout">
				<conversionPattern value="%newline %n記錄時間:%date %n線程ID:[%thread] %n日志級別:  %-5level %n日志描述:%message%newline %n" />
			</layout>
		</appender>
 
		<!--監(jiān)控日志-->
		<appender name="MonitorAppender" type="log4net.Appender.RollingFileAppender">
			<param name="File" value="Log\\LogMonitor\\" />
			<param name="AppendToFile" value="true" />
			<param name="MaxFileSize" value="10240" />
			<param name="MaxSizeRollBackups" value="100" />
			<param name="StaticLogFileName" value="false" />
			<param name="DatePattern" value="yyyy\\yyyyMM\\yyyyMMdd'.txt'" />
			<param name="RollingStyle" value="Date" />
			<layout type="log4net.Layout.PatternLayout">
				<conversionPattern value="%newline %n記錄時間:%date %n線程ID:[%thread] %n日志級別:  %-5level %n跟蹤描述:%message%newline %n" />
			</layout>
		</appender>
 
		<!--Error日志-->
		<logger name="LogError">
			<level value="ERROR" />
			<appender-ref ref="RollingLogFileAppender" />
		</logger>
 
		<!--Info日志-->
		<logger name="LogInfo">
			<level value="INFO" />
			<appender-ref ref="InfoAppender" />
		</logger>
 
		<!--監(jiān)控日志-->
		<logger name="LogMonitor">
			<level value="Monitor" />
			<appender-ref ref="MonitorAppender" />
		</logger>
	</log4net>

更改配置文件的"復(fù)制到輸出目錄"這個屬性為"始終復(fù)制"

 接下來我們找到AssemblyInfo.cs這個類,在這個類中加入一行代碼

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

 然后在我們項(xiàng)目文件下新建一個名為LoggerHelper的類,代碼如下

public class LoggerHelper
    {
        private static readonly log4net.ILog LogInfo = log4net.LogManager.GetLogger("LogInfo");
 
        private static readonly log4net.ILog LogError = log4net.LogManager.GetLogger("LogError");
 
        private static readonly log4net.ILog LogMonitor = log4net.LogManager.GetLogger("LogMonitor");
 
        /// <summary>
        /// 記錄Error日志
        /// </summary>
        /// <param name="errorMsg"></param>
        /// <param name="ex"></param>
        public static void Error(string errorMsg, Exception ex = null)
        {
            if (ex != null)
            {
                LogError.Error(errorMsg, ex);
            }
            else
            {
                LogError.Error(errorMsg);
            }
        }
 
        /// <summary>
        /// 記錄Info日志
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="ex"></param>
        public static void Info(string msg, Exception ex = null)
        {
            if (ex != null)
            {
                LogInfo.Info(msg, ex);
            }
            else
            {
                LogInfo.Info(msg);
            }
        }
 
        /// <summary>
        /// 記錄Monitor日志
        /// </summary>
        /// <param name="msg"></param>
        public static void Monitor(string msg)
        {
            LogMonitor.Info(msg);
        }
    }

 接下來我們直接在需要打日志的地方調(diào)用LoggerHelper類中的方法就可以了

到此這篇關(guān)于C#使用log4net打日志的文章就介紹到這了,更多相關(guān)C# log4net日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#中的let字句應(yīng)用示例

    C#中的let字句應(yīng)用示例

    這篇文章主要給大家介紹了C#中的let字句,文中通過應(yīng)用實(shí)例介紹的很詳細(xì),相信對大家具有一定的參考價值,有需要的朋友們下面來一起看看吧。
    2017-02-02
  • C# 特殊的string類型詳解

    C# 特殊的string類型詳解

    本文主要介紹了C# 特殊的string類型。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • C#多維數(shù)組學(xué)習(xí)使用

    C#多維數(shù)組學(xué)習(xí)使用

    當(dāng)下, 由于存儲結(jié)構(gòu)需要, 用多維數(shù)組, 順便學(xué)習(xí)了一下, 將學(xué)習(xí)經(jīng)過備忘如下
    2012-09-09
  • C#判斷訪問來源是否為搜索引擎鏈接的方法

    C#判斷訪問來源是否為搜索引擎鏈接的方法

    這篇文章主要介紹了C#判斷訪問來源是否為搜索引擎鏈接的方法,實(shí)例分析了C#解析URL來源的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • .NET Core開發(fā)之配置詳解

    .NET Core開發(fā)之配置詳解

    這篇文章給大家分享了.NET Core開發(fā)中相關(guān)配置的知識點(diǎn)內(nèi)容,有需要的朋友們可以參考下。
    2018-08-08
  • 詳解C#壓縮、解壓文件夾/文件(帶密碼)

    詳解C#壓縮、解壓文件夾/文件(帶密碼)

    這篇文章主要給大家介紹了關(guān)于C#壓縮、解壓文件夾/文件(帶密碼)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • C#自定義事件模擬風(fēng)吹草搖擺效果

    C#自定義事件模擬風(fēng)吹草搖擺效果

    這篇文章主要介紹了C#自定義事件模擬風(fēng)吹草搖擺效果,草地上每一顆草都監(jiān)聽HoverTreeWindEvent事件,根據(jù)風(fēng)向(WindDdirection)調(diào)整姿態(tài)。需要的朋友可以參考下
    2017-08-08
  • WPF中使用CallerMemberName簡化InotifyPropertyChanged的實(shí)現(xiàn)

    WPF中使用CallerMemberName簡化InotifyPropertyChanged的實(shí)現(xiàn)

    這篇文章介紹了WPF中使用CallerMemberName簡化InotifyPropertyChanged的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • C# Hook鉤子實(shí)例代碼 截取鍵盤輸入

    C# Hook鉤子實(shí)例代碼 截取鍵盤輸入

    C# Hook鉤子實(shí)例代碼之截取鍵盤輸入,需要的朋友可以參考下
    2013-05-05
  • Winform開發(fā)框架中如何使用DevExpress的內(nèi)置圖標(biāo)資源

    Winform開發(fā)框架中如何使用DevExpress的內(nèi)置圖標(biāo)資源

    這篇文章主要給大家介紹了關(guān)于在Winform開發(fā)框架中如何使用DevExpress的內(nèi)置圖標(biāo)資源的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們一起來看看吧
    2018-12-12

最新評論

枣阳市| 建瓯市| 阿拉尔市| 竹山县| 锦州市| 横山县| 长岛县| 巩留县| 丁青县| 广平县| 晋江市| 宁南县| 湘西| 沈阳市| 贺州市| 巴彦淖尔市| 宁城县| 驻马店市| 集安市| 东乌珠穆沁旗| 昌都县| 泾川县| 民勤县| 道孚县| 临高县| 天门市| 辰溪县| 调兵山市| 泗洪县| 红桥区| 正安县| 肇州县| 贵德县| 于田县| 崇义县| 葵青区| 蒲江县| 徐水县| 临沂市| 平遥县| 五华县|