.NET生产调试

Jon*_*ees 6 .net debugging

我已经在生产中使用了一段时间的Windows应用程序,并设置为在它抛出异常时向我们发送错误报告.其中大部分都是相当描述性的,可以帮助我快速找到问题(我使用的是MS Application Exception Block).

在某些情况下,我的报告是我无法重现的问题,而且似乎只发生在少数客户端计算机上.

我没有物理访问这些客户端机器,我可以使用哪些策略进行调试?在代码中构建一些跟踪是否会更好,还是有其他替代方案?

谢谢.

编辑:我应该更清楚:错误报告我得到了堆栈跟踪,但由于它是生产代码,它并不表示导致异常的确切行,只是它抛出的方法.

Rob*_*ker 2

一种选择是生成尽可能靠近抛出异常的位置的(小型)转储文件。本文讨论如何通过托管代码执行此操作

然后,您可以将转储文件加载到 Visual Studio 或 WinDbg 中,并借助SOS进行检查