2010-04-21 67 views
1

從ASP.NET WebForms遷移之前我有一個很好的方法來監視事件日誌(管理工具)中的所有應用程序錯誤。ASP.NET MVC應用程序的奇怪行爲 - 錯誤跟蹤

但是現在在轉移到asp.net MVC之後,我得到的每一分鐘都會發生同樣的錯誤(關於Site Master)。我知道這是不對的,因爲還有其他錯誤,但不會顯示。我有目的地通過零操作進行劃分,並沒有跟蹤它。

我不得不實現一個控制器的OnException方法,併發送帶有非常不方便的錯誤細節的電子郵件。

我該如何解決這個問題?

回答

0

我在我的global.asax中實現了protected void Application_Error(object sender, EventArgs e)方法,用於將所有錯誤記錄到我的ASP.NET MVC應用程序中的EventLog中。請記住,如果您的網絡服務器使用網絡服務憑據運行,那麼您的不能從創建應用程序內的新事件源。解決方法是通過使用註冊表工具在註冊表中添加事件源來手動創建事件源(用於測試目的)。添加它的路徑是HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application。創建一個新的密鑰來添加事件源。稍後,您可能希望在安裝程序中包含密鑰的創建。它對我來說非常合適。如果您的控制器操作是通過Ajax或其他方式調用的,則無關緊要。錯誤仍將被記錄。希望能幫助到你。