2010-03-31 48 views
1

嗨,我發現我的應用程序導致一些錯誤登錄在事件日誌如何調試事件查看器中記錄的.NET錯誤?

它指出:

NET Runtime 2.0 Error 

    EventType clr20r3, P1 *****.exe, P2 1.0.0.0, P3 4b2a572f, P4 system.web.services, P5 2.0.0.0, P6 4889df18, P7 bc, P8 65, P9 system.net.webexception, P10 NIL. 

我怎樣才能找出發生了什麼事?我在本地嘗試過這個應用程序,一切正常。

回答

1

你能描述更多關於它的應用類型嗎?它在做什麼,它是互動的還是非互動的?

實際錯誤是system.net.webexception - 這是與網頁或網絡服務通信的某種形式的問題。這本身就表明它可能是一個間歇性的錯誤,如果它在您嘗試時可以正常工作。

當它遠程運行時,它或者什麼都不正確 - 與您的環境有所不同。例如,您是否使用在遠程運行應用程序時不可用的內部DNS條目?

你會想抓住你的應用程序(在你的main法像一個整體try { } catch { })所有的異常,並記錄異常到一個文件,或者把它給他們發電子郵件給自己,這樣你就可以更詳細地看到發生了什麼。

+0

是的..它是一個應用程序連接到服務器1,獲取一個XML文件..然後連接到MS報告服務獲取一些報告,並最終連接到服務器3,它發送一些生成的文件 – 2010-03-31 15:11:47

+0

是否可以是報告它的提取時間比Web服務客戶端要等待的時間要長,並且超時? – 2010-03-31 15:13:29

+0

是的,這可能是原因..但我不明白它..因爲我有這段代碼在try catch子句 – 2010-03-31 15:14:54

1

它看起來像一個未處理的異常。如果它是在Web應用程序或服務中生成的,則可以嘗試在global.asax文件中放置全局異常處理程序。示例見here。您可以捕獲錯誤並向事件日誌輸出一些更好的信息。

+0

據我可以告訴從錯誤日誌,它是一個.exe,因此一個Windows應用程序,而不是一個Web應用程序。 – 2010-03-31 15:11:11

+0

問題是,應用程序是由系統調度程序啓動的控制檯應用程序 – 2010-03-31 15:12:45

+0

@Andy ..正確的Andy ..它的一個.exe直接駐留在機器上 – 2010-03-31 15:13:23

3

你的應用程序崩潰了未處理的異常。沃森日誌不足以找到原因。爲AppDomain.CurrentDomain.UnhandledException事件編寫一個事件處理程序,讓它將e.ExceptionObject.ToString()寫入事件日誌,以便獲得一個很好的堆棧跟蹤,以顯示爲什麼以及它在哪裏被轟炸。

1

這裏是你的事件日誌條目

P4 system.web.services - module that was throwing the exception 
P9 system.net.webexception - Exception Type 
P8 65 - IL Offset where the exception was thrown 

簡單的解釋這是沃森桶得到異常的調用堆棧。從.NET 2.0開始,Watson報告提供了這些信息。

以上是MSDN article的上述說明。

相關問題