1

我突然负责调试/找出几天前崩溃其 ApplicationPool 的 asp.net 应用程序出了什么问题。我们设置的 5 分钟故障保护中的 5 个错误将其删除。问题是它仍然提供页面,因此只为一些访问者返回了 503。遗憾的是,我们在应用程序中的日志记录不足,而且这种情况很少发生,而且只发生在场中的一台服务器上,因此很难找出问题所在。

现在回答问题。我不是管理员,也不是 IIS7 和 Server2008 的新手,所以我只是在寻找我拥有的可能性。我所知道和拥有的:

  • httperr 日志文件。
  • 一些保存在另一个磁盘中的 wc3 格式的站点特定日志,看起来像访问日志?
  • 事件查看器

还有可能设置跟踪失败的请求,我知道这可能会获得一些性能吗?

我是否遗漏了任何已记录或可以记录的内容?关于如何检查我的服务器以确保应用程序正常运行的任何一般提示?

我将学习 LogParser,因为这似乎是我应该做的,有什么提示吗?

编辑:我也对机器状态的日志感兴趣。像cpu-load,内存等。有什么可能性吗?

4

3 回答 3

1

您应该查看 Tess Ferrandez “如果它坏了,你应该修复它”博客。这是我所知道的用于调试生产 asp.net 应用程序的最佳资源。可能所有的日志都无法为您提供足够的帮助。在大多数情况下,它的应用程序代码负责崩溃。

于 2008-12-01T22:27:06.760 回答
0

在我们的 Web 应用程序中,我通过 HttpApplication 错误事件捕获所有未处理的异常,并将这些异常与我需要的所有辅助数据一起记录到数据库中。如果该日志记录失败,那么我求助于 Windows EventLog。然后我在另一台机器上运行服务,定期检查日志和站点,并按计划通过电子邮件向我发送更新。

于 2008-12-01T17:14:46.360 回答
0

如果您特别喜欢冒险,可以使用多种方法来创建和分析 IIS 的故障转储。

http://support.microsoft.com/kb/892277

使用它,可以找出崩溃点的调用堆栈。

于 2008-12-01T17:15:15.113 回答