2013-10-24 30 views
0

默認情況下,ASP.NET將任何未處理的異常寫入默認的ASP.NET X.Y.Z.0事件日誌源。是否可以指定配置:特定應用程序的事件和異常必須記錄在特定事件日誌源中?如何指定ASP.NET寫入未處理的異常的事件日誌源?

原因是我希望所有與我的應用程序直接相關的問題都存儲在一個單獨的事件日誌類別中,然後可以對其進行篩選。

回答

0

我從來沒有這樣做過,但你可以使用其中的Global.Application_Error() method和使用的語法如下:

Exception ex = Server.GetLastError().GetBaseException(); 

    //log to Event Log 
    EventLog.WriteEntry("Whatever", 
    "MESSAGE: " + ex.Message + 
    "\nSOURCE: " + ex.Source + 
    "\nFORM: " + Request.Form.ToString() + 
    "\nQUERYSTRING: " + Request.QueryString.ToString() + 
    "\nTARGETSITE: " + ex.TargetSite + 
    "\nSTACKTRACE: " + ex.StackTrace, 
    EventLogEntryType.Error); 
+0

這就是我可以創建自己的事件源從代碼中記錄事件。我遇到的問題是我需要記錄ASP.NET自身記錄的異常(例如,像'web.config'這樣的錯誤無法解析')。 –

+0

@Knaģis啊好的。我現在改變了我的答案,希望它可以幫助,但我從來沒有這樣做過,所以我有點猜測:) –

+0

新的示例不適用於初始化應用程序時發生錯誤的情況像提到的配置解析)以及潛在的其他低級錯誤。 –

相關問題