2009-05-05 6 views
2

Was ist der einfachste Weg, um zu überwachen, wie lange es dauert, um meine ASP.net-Seiten zu rendern (ich benutze Webforms noch, wenn es darauf ankommt)?Wie zeige ich die Seitengenerierungszeit in asp.net an?

Ich weiß, dass der Seitenlebenszyklus ziemlich involviert ist, aber ich suche im Grunde nur nach einer Zahl, die mir sagt, wie lange mein Code gebraucht hat und das am unteren Rand (oder wo auch immer) angezeigt wird.

bearbeiten

Einige Leute haben die asp.net Trace Config genannt, die fantastisch ist und ich bin nicht sicher, wie ich es verpasst. Das einzige, was ich noch suchen ist, wie gerade die letzte Renderzeit zur Ausgabe: dh

Response.Write(Context.Trace.FinalRenderTimeFromFirst) 

Aber ich kann nicht herausfinden, wie der Inhalt des Spurenelements zu inspizieren.

Antwort

1

Sie möchten die Ablaufverfolgung aktivieren.

Von The Basics of .NET Tracing:

[M] in web.config das Spurenelement odify wie folgt:

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

+0

Und wenn Sie diese Konfiguration verwenden, können Sie Ihre Ergebnisse finden, indem Sie zu http: //YOUR_APP_ROOT/trace.axd gehen –

1

put trace = true in der ersten Zeile von Ihnen. Aspx-Datei und verwenden Sie response.trace ("") in Ihrem Code, um weitere Informationen hinzuzufügen.

2

Ich benutze Fiddler (http://www.fiddler2.com/Fiddler2/version.asp) für solche Dinge. Es ist nicht spezifisch für ASP.NET, aber es wird Ihre Seite beim Rendern auf dem Client aufschlüsseln und die Zeit anzeigen, die benötigt wurde, um jedes Teil Ihrer Seite zu laden, wenn es in den Browser kommt.

Hoffe, das hilft!

0

ich in der Regel mit diesem einfachen Code auf die Unterseite meiner Layoutansicht hinzu:

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

ich ASP.NET MVC mit Razor verwenden, sondern sollte einfach trivial zu portieren zu Web Forms sein.

Ausgänge so etwas wie:

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

Dies beginnt die Messung, wenn die HttpContext erstellt wird (nach the documentation) und hält direkt vor dem Ausgang zu schreiben, so dass es ziemlich genau sein soll.

Es funktioniert möglicherweise nicht in allen Anwendungsfällen (wenn Sie untergeordnete Aktionen messen oder die Zeit außerhalb der MVC-Aktion ignorieren möchten usw.), aber es ist einfach in eine Ansicht einzufügen.

Für erweiterte Diagnosen verwendete ich Glimpse.

Verwandte Themen