統一錯誤日志管理方法
【專利摘要】本發明涉及統一錯誤日志管理方法。本發明針對現有技術中在每一個可能出現錯誤的地方都需要去獨立的寫日志記錄會加重代碼的維護難度和增加重復的代碼邏輯的問題,提供一種統一錯誤日志管理,包括以下步驟:系統運行待檢測程序,檢測到異常時,啟動異常記錄程序對異常信息進行記錄,并將異常信息進行統一存儲。使用Nlog和Exception Filter Attribute的特性實現了在最外層捕獲日志并記錄在數據庫中,實現了Log的統一捕獲和記錄,避免了獨立寫try catch模塊記錄日志。適用于統一錯誤日志管理。
【專利說明】
統一錯誤日志管理方法
技術領域
[0001 ]本發明涉及日志管理,特別涉及統一錯誤日志管理。
【背景技術】
[0002]平臺維護時,由于各種突發的情況導致不可預料的錯誤出現,此時需要使用日志 技術來記錄錯誤以及錯誤發生的堆棧信息。現有技術中是在每一個可能出現錯誤的地方都 需要都去獨立的寫日志記錄會加重代碼的維護難度和增加重復的代碼邏輯。其工作代碼如 下:
[0004] 需要獨立的寫try catch模塊記錄日志。
【發明內容】
[0005] 本發明所要解決的技術問題,就是提供一種統一錯誤日志管理方法以實現統一錯 誤日志記錄,避免獨立的寫try catch模塊記錄日志。
[0006] 本發明解決所述技術問題,采用的技術方案是,統一錯誤日志管理,包括以下步 驟:系統運行待檢測程序,檢測到異常時,啟動異常記錄程序對異常信息進行記錄,并將異 常信息進行統一存儲。
[0007] 具體的,系統通過使用Log Exception Filter實現父類Exception Filter Attribute的On Exception方法來檢測異常。
[0008] 進一步的,系統在On Exception方法中使用Nlog日志記錄工具對異常信息進行記 錄。
[0009] 具體的,異常信息統一存儲于錯誤日志數據庫和/或文件格式存儲,所述文件格式 至少包括文本、Json及xml格式。
[0010] 進一步的,系統采用直接交互數據庫的方式實現對異常信息進行記錄,并將其上 傳至錯誤日志數據庫中。
[0011] 具體的,所述異常信息至少包括日志ID、日志發生時間、日志級別、日志信息文本、 堆棧信息、日志來源及錯誤信息。
[0012] 本發明的有益效果是:使用Nlog和Exception Filter Attribute的特性實現了在 最外層捕獲日志并記錄在數據庫中,實現了Log的統一捕獲和記錄,避免了獨立寫try catch模塊記錄日志。
[0013] 以下結合實施例的【具體實施方式】,對本發明的上述內容再作進一步的詳細說明。 但不應將此理解為本發明上述主題的范圍僅限于以下的實例。在不脫離本發明上述技術思 想情況下,根據本領域普通技術知識和慣用手段做出的各種替換或變更,均應包括在本發 明的范圍內。
【具體實施方式】
[0014] 下面結合實施例詳細描述本發明的技術方案:
[0015] 本發明針對現有技術中在每一個可能出現錯誤的地方都需要去獨立的寫日志記 錄會加重代碼的維護難度和增加重復的代碼邏輯的問題,提供一種統一錯誤日志管理,包 括以下步驟:系統運行待檢測程序,檢測到異常時,啟動異常記錄程序對異常信息進行記 錄,并將異常信息進行統一存儲。使用Nlog和Except ion Filter Attribute的特性實現了 在最外層捕獲日志并記錄在數據庫中,實現了 Log的統一捕獲和記錄,避免了獨立寫try catch模塊記錄日志。
[0016] 實施例
[0017]現有技術中常用的錯誤日志管理如下:
[0019] 需要獨立的寫try catch模塊記錄日志。當系統運行待檢測程序時,運行上述錯誤 日志管理代碼后,當檢測到任意代碼段有誤時,跳出運行程序對錯誤代碼段進行記錄。
[0020] 而本例中,系統運行待檢測程序,檢測到異常時,啟動異常記錄程序對異常信息進 行記錄,并將異常信息進行統一存儲。程序運行與異常記錄分開運行,相互并不影響。
[0021] 通過使用Log Exception Filter實現父類Exception Filter Attribute的On Exception方法來檢測異常。系統在On Exception方法中使用Nlog日志記錄工具對異常信 息進行記錄。其運行代碼結構如下所示:
[0023]其中,Log Exception Filter的實現依賴于.net web Api的Exception Filter Attribute實現,結構如下所示:
[0026] 最后,利用Nlog的日志實現將Log Exception Filter捕獲的日志通過采用直接交 互數據庫的方式上傳至錯誤日志數據庫中。也可以直接將捕獲的日志進行文件格式存儲, 所述文件格式至少包括文本、Json及xml格式。捕獲的日志即異常信息中至少包括日志ID、 日志發生時間、日志級別、日志信息文本、堆棧信息、日志來源及錯誤信息。
【主權項】
1. 統一錯誤日志管理方法,其特征在于,包括以下步驟:系統運行待檢測程序,檢測到 異常時,啟動異常記錄程序對異常信息進行記錄,并將異常信息進行統一存儲。2. 根據權利要求1所述的統一錯誤日志管理方法,其特征在于,系統通過使用Log Exception Filter實現父類Exception Filter Attribute的On Exception方法來檢測異 常。3. 根據權利要求2所述的統一錯誤日志管理方法,其特征在于,系統在On Exception方 法中使用Nlog日志記錄工具對異常信息進行記錄。4. 根據權利要求1所述的統一錯誤日志管理方法,其特征在于,異常信息統一存儲于錯 誤日志數據庫和/或文件格式存儲,所述文件格式至少包括文本、Json及xml格式。5. 根據權利要求4所述的統一錯誤日志管理方法,其特征在于,系統采用直接交互數據 庫的方式實現對異常信息進行記錄,并將其上傳至錯誤日志數據庫中。6. 根據權利要求1所述的統一錯誤日志管理方法,其特征在于,所述異常信息至少包括 日志ID、日志發生時間、日志級別、日志信息文本、堆棧信息、日志來源及錯誤信息。
【文檔編號】G06F17/30GK106095914SQ201610405167
【公開日】2016年11月9日
【申請日】2016年6月7日
【發明人】魏勁超, 江濤
【申請人】四川長虹電器股份有限公司