2009-04-16 28 views
1

我們使用log4net記錄各種Web應用程序的應用程序異常。目前我們使用RollingLogFileAppender,門限爲InfoSmtpAppender,閾值爲Warn按相似性對log4net錯誤進行分組

問題是,我們沒有簡單的方法將錯誤日誌條目按其內容分組。我們經常看到某些錯誤,以及不時出現的錯誤。我們希望能夠自動跟蹤相同錯誤的發生。

從概念上講,這很簡單 - 在日誌條目的最後50個字符上的模式匹配應該允許我們這樣做。

有沒有人實施過這樣的解決方案,或者任何人都可以推薦更好的方法?

回答

1

你可能會嘗試使用不同的Appender(比如DBAppender)(當然有一個錯誤閾值),然後對結果表進行排序。

0

我不認爲這種解決方案開箱即用。但是,您可以定義自定義日誌級別(或選擇其中一個未使用的日誌級別)來輸出自己的日誌級別以更常見的錯誤輸出到自己的日誌級別,並在「主」錯誤日誌中將其過濾掉,而不會造成太大麻煩。

1

只需將您的行記錄爲XML(其他格式當然也可以)。

這是我們如何做到這一點:

<USERID>GUID</USERID><ERRORCODE>INVALID_XML</ERRORCODE><DESCRIPTION>File x is not in correct xml format</DESCRIPTION> 

然後我們分析日誌文件,並顯示在與錯誤代碼,描述,記錄級列一個DataGridView。然後,我們可以快速排序或過濾,例如ERRORCODE。

查看這些INVALID_XML條目的數據集將很快顯示出這些錯誤是否出現在日誌文件中。

使用userIds我們還可以看到客戶端在登錄時所做的所有調用。

相關問題