代码之家  ›  专栏  ›  技术社区  ›  Christian Dalager

如何检查ASP.NET请求管道?

  •  2
  • Christian Dalager  · 技术社区  · 16 年前

    当我在ASP.NET应用程序的“内部”上测量请求时间,并将其与应用程序的“外部”上的计时进行比较时,我会得到不同的值——1000-5000毫秒的奇怪开销。

    可能请求正排在IIS前面?

    或者在HTTPmodule中发生了什么奇怪的事情?

    问题是:有没有一种方法可以检查请求管道,以准确跟踪应用程序被点击之前所花的时间?

    4 回复  |  直到 6 年前
        1
  •  1
  •   Eduardo Campañó    16 年前

    您可以创建自己的模块并在上面注册,以更准确地跟踪每个请求,但是一旦IIS将请求委托给ASP.NET ISAPI模块,度量就会开始。要获得更高的准确性,您可以访问IIS日志。

        2
  •  2
  •   Glorfindel Doug L.    6 年前

    正如丹所说,您需要在应用程序级别(web.config)启用跟踪:

    <!-- pageOutput enables trace output from the page itself -->
    <system.web>
    <trace enable="true" pageOutput="true" traceMode="SortByTime"/>
    </system.web>
    

    或者可以在页面级别启用跟踪。这可以通过在page指令中设置trace=“true”来实现。

    <%@ Page Language="C#" Trace="true" 
             Inherits="System.Web.UI.Page" CodeFile="Default.aspx.cs" %>
    

    应用程序级跟踪可以从 http://localhost/appname/trace.axd . 这将显示请求列表:

    当您单击每个页面的详细信息时,您可以看到页面生命周期中每个事件所花费的时间。这将有助于您确定页面实际占用的时间超出预期。

    [图像引用自 http://www.brainbell.com/tutorials/ASP/Built-in_Handlers.html]

        3
  •  0
  •   Dan Goldstein    16 年前

    您可以在web.config文件中打开跟踪。台词应该是这样的 <trace enabled="true" pageOutput="true" /> . “msdn”页是 here .

        4
  •  0
  •   Mark Gibaud    11 年前

    你还想试试 Glimpse . 它允许您查看请求管道中的模块以及许多其他信息。

    推荐文章