應用程序中記錄錯誤日志是在普通不過的開發需求了,但凡系統正規點這都是必不可少的,但之前用的方式除了寫txt文件就是寫數據庫,今天學到一種新方式:錯誤信息記錄windows錯誤日志,總結下
顧名思義,這種方式就是當程序報錯后,講錯誤信息記錄在windows系統自帶的事件查看器
(注:進入事件查看器的命令:eventvwr.msc)
以下是代碼實現:
1 /// <summary> 2 /// 記錄錯誤信息到windows日志 3 /// </summary> 4 /// <param name="sourceName">錯誤源</param> 5 /// <param name="message">錯誤信息</param> 6 public static void WriteErrorLog(string sourceName,string message) 7 { 8 //判斷錯誤源是否存在,否則創建 9 if (!EventLog.SourceExists(sourceName)) 10 { 11 EventLog.CreateEventSource(sourceName, sourceName + "Log"); 12 } 13 14 //創建記錄錯誤日志對象 15 EventLog log = new EventLog(sourceName + "Log"); 16 log.Source = sourceName; 17 18 //寫入錯誤日志 19 log.WriteEntry(message, System.Diagnostics.EventLogEntryType.Error); 20 }
調用代碼:
1 static void Main(string[] args) 2 { 3 try 4 { 5 throw new MethodAccessException(); 6 } 7 catch (Exception ex) 8 { 9 ErrorLog.WriteErrorLog("MyEventLogDemo", "記錄出錯信息:" + ex.Message + DateTime.Now); 10 } 11 12 Console.Read(); 13 }
如下是事件查看器中看到的效果:
以上算是個人學習成果的總結吧,較淺顯,倒也實用,后期再做深入分析--
--待續--
參考文章:http://www.cnblogs.com/9999/archive/2009/11/02/1594736.html