我们在生产中遇到堆栈溢出大约2-4次/天
我们不能在开发环境中重现这一点,考虑到这是一个在任何时候都可能有大约100个并发用户的web应用程序,我正在努力找出最好的方法来跟踪它。
有没有办法从事件查看器获取更多信息-很高兴安装某种形式的侦听器工具-即使我只能获得线程标识(设置为当前用户),这也会有所帮助-尽管dll +类/函数会很棒!
或者这只是一个挖掘,试图复制或添加一些跟踪的问题??
发布于 2010-11-25 01:03:14
您可以在生产IIS上运行IISDiag工具来分析崩溃。这里有一些信息:
http://support.microsoft.com/kb/919790
这不仅仅是为了防止泄漏--它会转储一些类似于核心文件的东西,供您稍后分析。
发布于 2010-11-25 01:15:13
使用Elmah进行异常日志记录。使用Elmah添加未处理异常的日志记录只需要将程序集放到应用程序bin文件夹中,并在基本日志记录场景的web配置中添加Elmah部分。
如果日志不足以确定错误来源,您可以使用DebugDiag创建失败应用程序状态的内存转储。这里有一个关于如何使用here的指南。
发布于 2010-11-25 00:53:29
您可以在global.asax文件中放置一个全局异常处理程序。放入一个异常处理程序,然后将堆栈跟踪写入事件日志。This文章对如何做到这一点有一个很好的总结,但我相信还有很多其他的文章。一旦知道了错误发生的位置,就可以在发生错误的函数中添加一些额外的日志记录,希望能缩小范围,直到找到具体的问题。
https://stackoverflow.com/questions/4269226
复制相似问题