標籤:work 自動產生 重要 配置 star ... 設定檔 cti 描述
原創:清風一人醉
最近的項目比較鬆動,所以閑下來總結一下自己在項目中遇到的小知識點,也許對有需要的人有些協助,所以步驟解釋都比較詳細,就被管理大大一次次無情的移出來了。不知道是不是我的話比較少的緣故,哎,第一次發部落格園首頁分享出去,以前都是自己默默隨手一發在隨筆裡面,這次就想嘗試發出去看看,有沒有迴響。歡迎大家一起來探討學習!
第一步:引用log4net設定檔
第二步:在自己項目下建立檔案夾LogNet,再在裡面建立類Log.cs
log.cs內容如下:
1 public class Log 2 { 3 public static void WriteFatal(Exception ex) 4 { 5 log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 6 log.Fatal("嚴重錯誤", ex); 7 } 8 9 /// <summary>10 /// 輸出異常資訊11 /// </summary>12 /// <param name="t"></param>13 /// <param name="e"></param>14 public static void WriteLog(Type t, Exception e)15 {16 log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);17 log.Error("Error", e);18 }19 20 /// <summary>21 /// 輸出普通錯誤資訊22 /// </summary>23 /// <param name="ex"></param>24 public static void WriteLog(Exception ex)25 {26 log4net.ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);27 log.Error("Error", ex);28 }29 30 /// <summary>31 /// 輸出DEBUG資訊32 /// </summary>33 /// <param name="text"></param>34 public static void WriteDebug(object text)35 {36 log4net.ILog log = log4net.LogManager.GetLogger("Debug資訊");37 log.Debug(text);38 }39 40 /// <summary>41 /// 輸出程式運行資訊42 /// </summary>43 /// <param name="text"></param>44 public static void WriteInfo(string text)45 {46 ILog log = LogManager.GetLogger("程式運行資訊");47 log.Info(text);48 }49 }
第三步:在自己項目下建立Log4Net.config
Log4Net.config內容如下:
1 <?xml version="1.0"?> 2 <configuration> 3 <configSections> 4 <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> 5 </configSections> 6 <log4net> 7 <!--定義輸出到檔案中--> 8 <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> 9 <!--定義檔案存放位置-->10 <file value="log\\"/>11 <appendToFile value="true"/>12 <rollingStyle value="Date"/>13 <datePattern value="yyyy-MM-dd‘.txt‘"/>14 <staticLogFileName value="false"/>15 <MaxSizeRollBackups value="100"/>16 <layout type="log4net.Layout.PatternLayout">17 <!--每條日誌末尾的文字說明-->18 <!--輸出格式-->19 <!--範例:2008-03-26 13:42:32,111 [10] INFO Log4NetDemo.MainClass [(null)] - info-->20 <conversionPattern value="%newline %n記錄時間:%date %n線程ID:[%thread] %n記錄層級: %-5level %n出錯類:%logger property: [%property{NDC}] - %n錯誤描述:%message%newline %n"/>21 </layout>22 </appender>23 <root>24 <level value="ERROR"/>25 <level value="DEBUG"/>26 <level value="INFO"/>27 <!--檔案形式記錄日誌-->28 <appender-ref ref="RollingLogFileAppender"/>29 </root>30 </log4net>31 <startup>32 <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>33 </startup>34 </configuration>
第四步:在項目中搜尋Global.asax.cs中載入log4net設定檔
第五步:也是比較重要的一步,就是在AssemblyInfo.cs中註冊這個Log4Net.config,不然是不會自動產生text檔案的。
第六步:然後就可以在控制器函數裡面去引用Log。
這一行是寫在try...catch...中的catch中的,一般有異常資訊都是可以運用這一段代碼的。
這一行是我這邊需求需要不停監控程式的運行情況,所以加了這行不停輸出程式運行資訊。
以上是我的分享,歡迎轉載!
C#:MVC引用Log4Net建置錯誤日誌