2009-05-05 8 views
2

Quel est le moyen le plus simple de surveiller le temps nécessaire au rendu de mes pages asp.net (j'utilise toujours des webforms si cela est important)? Je sais que le cycle de vie de la page est assez impliqué, mais je cherche simplement un nombre qui me dit combien de temps mon code a pris pour s'exécuter et afficher cela en bas (ou ailleurs) de la page.Comment afficher l'heure de génération de la page dans asp.net?

Modifier

Plusieurs personnes ont mentionné la configuration de trace asp.net, ce qui est génial et je ne sais pas comment je l'ai raté. La seule chose que je suis toujours à la recherche est de savoir comment la sortie juste le temps rendu final: à savoir

Response.Write(Context.Trace.FinalRenderTimeFromFirst) 

Mais je ne peux pas comprendre comment inspecter le contenu de l'oligo-élément.

Répondre

1

Vous souhaitez activer le suivi.

De The Basics of .NET Tracing:

[M] odifier l'oligo-élément dans web.config comme suit:

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

+0

Et si vous utilisez cette configuration, vous pourrez trouver vos résultats en allant à http: //YOUR_APP_ROOT/trace.axd –

1

mettre trace = true dans la première ligne de vous. fichier aspx et utilisez response.trace ("") dans votre code pour y ajouter des informations supplémentaires.

2

J'utilise Fiddler (http://www.fiddler2.com/Fiddler2/version.asp) pour de telles choses. Il n'est pas spécifique à ASP.NET, mais il décomposera votre page au fur et à mesure qu'elle sera restituée au client, et montrera le temps nécessaire pour charger chaque partie de votre page lorsqu'elle arrive dans le navigateur.

Espérons que cela aide!

0

Je l'habitude d'ajouter ce code simple au fond de mon point de vue de la mise en page:

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

J'utilise ASP.NET MVC avec Razor, mais devrait être facile trivial au port de formulaires Web aussi.

Sorties quelque chose comme:

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

Cela commence lorsque la mesure HttpContext est créé (selon the documentation), et arrête juste avant d'écrire à la sortie, il devrait donc être assez précis.

Cela peut ne pas fonctionner pour tous les cas d'utilisation (si vous voulez mesurer des actions enfant, ou ignorer le temps en dehors de l'action MVC, etc.), mais il est facile de coller dans une vue.

Pour des diagnostics plus avancés, j'avais l'habitude d'utiliser Glimpse.

Questions connexes