2009-05-05 29 views
2

什么是最简单的方法来监视多长时间来呈现我的asp.net页面(我使用webforms仍然重要)?如何在asp.net中显示页面生成时间?

我知道页面生命周期是相当复杂的,但我基本上只是寻找一个数字,告诉我我的代码需要多长时间运行并显示在页面底部(或任何地方)。

编辑

几个人都提到了asp.net跟踪配置,这是真棒,我不知道我怎么错过了它。有一件事我现在还在找工作是如何只输出最终渲染时间:即

Response.Write(Context.Trace.FinalRenderTimeFromFirst) 

但我无法弄清楚如何检查微量元素的含量。

回答

1

您希望启用跟踪。

The Basics of .NET Tracing

[M]在 的web.config odify微量元素如下:

<trace enabled="true" .../>

+0

如果您使用此配置,您将能够通过访问http://YOUR_APP_ROOT/trace.axd找到您的结果 – 2009-05-05 16:53:31

1

放微量=在你的第一行真。 aspx文件并在后面的代码中使用response.trace(“”)向其添加附加信息。

2

我使用Fiddler(http://www.fiddler2.com/Fiddler2/version.asp)这样的事情。它不是专门针对ASP.NET的,但它会在您的页面呈现给客户端时分解您的页面,并显示加载到浏览器中的每一页页面所花费的时间。

希望这会有所帮助!

0

我通常这个简单的代码添加到我的布局视图底部:

<!-- Page generated in @((DateTime.UtcNow - HttpContext.Current.Timestamp.ToUniversalTime()).TotalSeconds.ToString("F4")) s --> 

我使用ASP.NET MVC剃刀,但应该很容易琐碎移植到Web窗体了。

输出是这样的:

<!-- Page generated in 0.4399 s --> 

这将启动(根据the documentation)创建HttpContext时测量,并且正确写入到输出之前停止,所以它应该是相当准确的。它可能不适用于所有用例(如果您想测量子操作,或者忽略MVC操作之外的时间等),但它很容易粘贴到视图中。

对于更高级的诊断,我曾经使用Glimpse

相关问题