如何debugging事件查看器中logging的.NET错误?

嗨,我发现我的应用程序会导致一些事件日志logging的错误。

它指出:

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. 

我怎么知道发生了什么事? 我已经尝试过本地的应用程序,一切工作正常。

Solutions Collecting From Web of "如何debugging事件查看器中logging的.NET错误?"

你能描述更多关于应用程序的类型吗? 它在做什么,它是互动的还是非互动的?

实际的错误是system.net.webexception – 这是与网页或网络服务通信的一些问题。 这本身就表明它可能是一个间歇性的错误,如果它可以正常工作,当你尝试它。

当它远程运行时,这个或那个东西的配置是错误的 – 这与你的环境有些不同。 例如,是否使用远程运行应用程序时不可用的内部DNS条目?

您将希望捕获应用程序中的所有异常(例如,您的main方法中的全局try { } catch { } ),并将异常记录到文件中,或者将它们通过电子邮件发送给自己,以便您可以看到更多详细说明发生了什么。

你的应用程序崩溃了一个未处理的异常。 沃森日志将不够好找到原因。 为AppDomain.CurrentDomain.UnhandledException事件编写一个事件处理程序,让它将e.ExceptionObject.ToString()写入事件日志,这样您将得到一个很好的堆栈跟踪,显示出为什么以及在哪里被轰炸。

它看起来像一个未处理的异常。 如果在Web应用程序或服务中生成,则可以尝试在global.asax文件中放置全局异常处理程序。 看这里的例子。 您可以捕获错误并将更好的信息输出到事件日志。

以下是您的事件日志条目的简单解释

 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上面的解释文章 。