如何在实时服务器上调试asp.net应用程序

时间:2009-09-02 20:04:06

标签: asp.net remote-debugging

我有一个基于.net framework 1.1的旧的asp.net Web应用程序,它已部署到实时服务器多年,现在我只在实时站点遇到一些问题,我的桌面上的开发版本工作精细。所以我正在考虑将一个远程调试器连接到实时站点并监视实时服务器上发生的事情,但我不知道该怎么做。

之前我使用过远程调试器,但是当我在本地局域网中的某个开发服务器上创建新项目时使用了它,而源和项目实际上是在远程服务器上,我只是将远程调试器从我的桌面连接到该服务器,它工作正常。但我不知道如何在实时服务器上调试应用程序。

2 个答案:

答案 0 :(得分:6)

那么,为什么不尝试在服务器上启用跟踪?那么你可以在一个单独的页面中看到所有信息?要在web.config中启用:

<configuration>
   <system.web>
     <trace enabled="true" pageOutput="false" requestLimit="40" 
        localOnly="false"/>
   </system.web>
</configuration>

然后在您的网站中加载trace.axd页面以查看页面级数据。

答案 1 :(得分:6)

是的,这是可能的,但更多的是参与其中。您需要附加到运行该网站的IIS工作进程(w3wp.exe)。我没有经常这样做,我通常会尽量避免它,因为当你被连接时,没有人可以访问该网站。

这是一篇解释该过程的文章。

http://www.codeproject.com/KB/aspnet/ProcessAttache.aspx

这篇文章基于2.0而不是1.1,但它仍然应该让你知道如何做到这一点。我想你必须在生产服务器上安装visual studio。

如果这不可行并且您可以访问代码,则还可以尝试在应用程序的某些位置记录到文本文件。我已经非常有效地解决了这个问题,它允许您让网站正常运行,并在您知道问题发生后查看日志文件。

您可能需要查看log4net,这是一个免费的日志记录应用程序。

祝你好运