代码之家  ›  专栏  ›  技术社区  ›  hwiechers

ASP.net运行状况监视与asmx web服务一起工作吗

  •  4
  • hwiechers  · 技术社区  · 16 年前

    5 回复  |  直到 16 年前
        1
  •  9
  •   Community Egal    13 年前

    请不要发布回复,除非它回答了所问的问题。对问题以外的问题的一半回答会使读者感到困惑。运行状况监视与“真正未处理”的ASP.NET异常或应用程序错误事件无关。

    答案是否定的。我对此有点深究,出于某种原因,web方法中提出的异常从未向健康监控提供商提出。看来你得抓住他们,自己动手。

        2
  •  1
  •   Mark S. Rasmussen    16 年前

    对未处理异常的正常解释与Tom所指的异常之间存在差异。Tom所指的是真正未经处理的异常,它将杀死您的w3wp.exe进程(在它有机会记录它之前),正如我在这里写的: http://www.improve.dk/blog/2008/04/07/spawning-threads-in-aspnet-can-be-dangerous

        3
  •  1
  •   David Boike    16 年前

    在Global.asax中,如果使用Visual Studio自动生成的方法,则可以向Application_Error方法添加代码来处理异常,并以您选择的任何方式记录异常。您还可以重写Init方法并为类的错误事件添加事件处理程序。

    在任何一种情况下,您都只能得到一个没有帮助的vanilla EventArgs对象,但是您可以使用HttpContext.Current.Server.GetLastError()来获取发生的异常。

    正如另一张海报所提到的,这可能无法捕获由异步运行的委托、您自己启动的线程或使用page.RegisterAsyncTask()创建的异步页面任务引发的异常。在这些情况下,您始终需要确保实现具有异常返回停止,以便可以捕获异常,并且不会中止IIS工作进程。

        4
  •  0
  •   Tom    16 年前

    它不会工作,因为未处理的异常没有在任何类型的try/catch中运行。因此,它将无法记录它。请看这篇博文: http://blogs.msdn.com/tom/archive/2007/12/04/unhandled-exceptions-causing-asp-net-to-crash-in-net-2-0.aspx

        5
  •  0
  •   Steven A. Lowe    16 年前

    CALM 在这种情况下,产品应该工作;如果没有,请告诉我-我写的;-)