亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#中四步輕松使用log4net記錄本地日志的方法

 更新時(shí)間:2017年11月23日 09:34:15   作者:begrateful  
下面小編就為大家分享一篇C#中四步輕松使用log4net記錄本地日志的方法,具有很好的參考價(jià)值。希望對(duì)大家有所幫助

在這里,記錄我在項(xiàng)目中使用log4net記錄本地日志的步驟。在不會(huì)之前感覺很難,很神秘,一旦會(huì)了之后其實(shí)沒那么難。其實(shí)所有的事情都是一樣的,下面我就分享一下我使用log4Net的經(jīng)驗(yàn)。

第一步:首先從Visual Studio中的Nuget包管理中搜索下載 Log4Net dll文件 如下圖:

選擇安裝的項(xiàng)目(哪個(gè)類庫中需要記錄日志就勾選上)

第二步:打開配置文件 WinFrom就是 App.config Web就是 web.config 將以下配置信息加入

<configSections>
 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net>
 <logger name="SysRFLogger">
 <level value="DEBUG" />
 <appender-ref ref="SysRFAppender" />
 </logger>
 <logger name="DebugRFLogger">
 <level value="DEBUG" />
 <appender-ref ref="DebugAppender" />
 </logger>
 <logger name="MsgLogger">
 <level value="DEBUG" />
 <appender-ref ref="MsgAppender" />
 </logger>
 <logger name="OperInfoLogger">
 <level value="DEBUG" />
 <appender-ref ref="OperInfoAppender" />
 </logger>
 <appender name="SysRFAppender" type="log4net.Appender.RollingFileAppender">
 <file value="Logs\syslog.log" />
 <appendToFile value="true" />
 <rollingStyle value="Date" />
 <preserveLogFileNameExtension value="true" />
 <datePattern value="yyyyMMdd" />
 <layout type="log4net.Layout.PatternLayout">
  <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
 </layout>
 </appender>
 <appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
 <file value="Logs\sysDebuglog.log" />
 <appendToFile value="true" />
 <rollingStyle value="Date" />
 <preserveLogFileNameExtension value="true" />
 <datePattern value="yyyyMMdd" />
 <layout type="log4net.Layout.PatternLayout">
  <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
 </layout>
 </appender>
 <appender name="MsgAppender" type="log4net.Appender.RollingFileAppender">
 <file value="Logs\Messagelog.log" />
 <appendToFile value="true" />
 <rollingStyle value="Date" />
 <preserveLogFileNameExtension value="true" />
 <datePattern value="yyyyMMdd" />
 <layout type="log4net.Layout.PatternLayout">
  <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
 </layout>
 </appender>
 <appender name="OperInfoAppender" type="log4net.Appender.AdoNetAppender">
 <bufferSize value="1" />
 <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=4.0.30319.18020, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
 <commandText value="INSERT INTO LOG_USEROPERLOG ([ID],[Date],[User],[Flag],[OperInfo],[OperFlag],[OperResult],[Message]) VALUES (@Id,@log_date, @user, @flag, @operinfo,@operflag, @operresult, @message)" />
 <parameter>
  <parameterName value="@Id" />
  <dbType value="String" />
  <size value="36" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{ID}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@log_date" />
  <dbType value="DateTime" />
  <layout type="log4net.Layout.RawTimeStampLayout" />
 </parameter>
 <parameter>
  <parameterName value="@user" />
  <dbType value="String" />
  <size value="64" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{User}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@flag" />
  <dbType value="Int32" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{Flag}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@operinfo" />
  <dbType value="String" />
  <size value="255" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{OperInfo}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@operflag" />
  <dbType value="String" />
  <size value="32" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{OperFlag}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@operresult" />
  <dbType value="String" />
  <size value="255" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{OperResult}" />
  </layout>
 </parameter>
 <parameter>
  <parameterName value="@message" />
  <dbType value="String" />
  <size value="4000" />
  <layout type="NT.MultithreadingTaskService.Log.Layout.UserOperLayOut,NT.MultithreadingTaskService.Log">
  <param name="ConversionPattern" value="%property{Message}" />
  </layout>
 </parameter>
 </appender>
 <root>
 <level value="DEBUG" />
 <appender-ref ref="SysRFAppender" />
 </root>
</log4net>

以上節(jié)點(diǎn)具體參數(shù)這里不做解釋,可以上網(wǎng)查詢幫助文檔

注意:這兩段XML要放在configuration 節(jié)點(diǎn)下靠前

第三步:打開項(xiàng)目AssemblyInfo.cs文件(UI層)

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

第四步:在需要記錄日志的cs文件中初始化: private ILog _log = LogManager.GetLogger("TicketFace");

一般常用以下幾個(gè)方法:

_log.Error();
_log.Debug();
_log.Info();

最后運(yùn)行項(xiàng)目然后在以上配置文件中找到路徑去文件夾里看看就生成了日志文件了。

注意:這里日志是以天為單位記錄 如下:

以上這篇C#中四步輕松使用log4net記錄本地日志的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#圖像亮度調(diào)整的方法

    C#圖像亮度調(diào)整的方法

    這篇文章主要介紹了C#圖像亮度調(diào)整的方法,涉及C#操作圖像亮度的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • 基于C#實(shí)現(xiàn)屏幕錄制功能

    基于C#實(shí)現(xiàn)屏幕錄制功能

    在許多應(yīng)用場景中,屏幕錄制是一項(xiàng)非常有用的功能,不管是用于教學(xué)、演示、故障排查還是游戲錄制,本文將詳細(xì)介紹如何使用?C#?實(shí)現(xiàn)屏幕錄制功能,幫助大家快速掌握這一實(shí)用技能,需要的朋友可以參考下
    2025-03-03
  • C#快速排序算法實(shí)例分析

    C#快速排序算法實(shí)例分析

    這篇文章主要介紹了C#快速排序算法,實(shí)例分析了C#排序方法的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • c#完美截?cái)嘧址a(中文+非中文)

    c#完美截?cái)嘧址a(中文+非中文)

    c#完美截?cái)嘧址a(中文+非中文),需要的朋友可以參考下
    2012-08-08
  • C#?Winform文本面板帶滾動(dòng)條的實(shí)現(xiàn)過程

    C#?Winform文本面板帶滾動(dòng)條的實(shí)現(xiàn)過程

    當(dāng)數(shù)據(jù)過多時(shí),往往無法在一頁中展示,所以非常需要一個(gè)滾動(dòng)條來調(diào)節(jié)頁面內(nèi)容,這篇文章主要給大家介紹了關(guān)于C#?Winform文本面板帶滾動(dòng)條的實(shí)現(xiàn)過程,需要的朋友可以參考下
    2022-12-12
  • C# 顯示、隱藏窗口對(duì)應(yīng)的任務(wù)欄

    C# 顯示、隱藏窗口對(duì)應(yīng)的任務(wù)欄

    WPF中全屏窗口,會(huì)自動(dòng)隱藏任務(wù)欄,那非全屏窗口如何隱藏任務(wù)欄?甚至有沒有一種場景,隱藏任務(wù)后自定義一套系統(tǒng)任務(wù)欄來顯示?這篇文章主要介紹了C# 顯示、隱藏窗口對(duì)應(yīng)的任務(wù)欄,需要的朋友可以參考下
    2021-10-10
  • C#調(diào)用WebService實(shí)例與開發(fā)教程(推薦)

    C#調(diào)用WebService實(shí)例與開發(fā)教程(推薦)

    下面小編就為大家分享一篇C#調(diào)用WebService實(shí)例與開發(fā)教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨想過來看看吧
    2017-12-12
  • C#?System.Linq提供類似SQL語法的高效查詢操作

    C#?System.Linq提供類似SQL語法的高效查詢操作

    System.Linq是C#的一個(gè)命名空間,提供了LINQ(語言集成查詢)功能,允許開發(fā)者使用一致的查詢語法來處理不同類型的數(shù)據(jù)源,如數(shù)組、集合、數(shù)據(jù)庫和XML等,本文介紹C#?System.Linq提供類似SQL語法的高效查詢操作,感興趣的朋友一起看看吧
    2024-09-09
  • C#過濾sql特殊字符串的方法

    C#過濾sql特殊字符串的方法

    這篇文章介紹了C#過濾sql特殊字符串的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • C# 利用Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化操作的示例代碼

    C# 利用Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化操作的示例代碼

    這篇文章主要介紹了C# 利用Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化操作,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論