Utilisation du tableau de bord du développeur

Dernière modification : mercredi 6 octobre 2010

S’applique à : SharePoint Foundation 2010

Dans cet article
Quelles sont les informations capturées ?
Modes d’affichage du tableau de bord
Comment activer le tableau de bord du développeur
Comment désactiver le tableau de bord du développeur
Sur quelles pages le tableau de bord du développeur s’affiche-t-il ?
Utilisation du tableau de bord du développeur sur les pages maîtres personnalisées
Utilisation du tableau de bord du développeur avec du code personnalisé

Le tableau de bord du développeur est une infrastructure d’instrumentation introduite dans Microsoft SharePoint Foundation 2010. Similaire du point de vue de sa conception au traçage de page ASP.NET, il fournit des informations de diagnostic qui peuvent aider un développeur ou l’administrateur système à résoudre les problèmes liés à la page de composants, qui seraient autrement très difficiles à isoler. Par exemple, un développeur peut facilement introduire des objets SPSite ou SPWeb dans son code sans le savoir ou ajouter des requêtes SQL Server superflues.

Jadis, la seule façon de résoudre les problèmes de performances provoqués par la surcharge supplémentaire de ces instances dans le code consistait à attacher un débogueur au code et à surveiller les traces du Générateur de profils SQL Server. Avec le tableau de bord du développeur, un développeur peut identifier ce type de problème, soit par programme à l’aide du modèle d’objet, soit visuellement en examinant la sortie de pages.

Bien que les informations sur les problèmes de performances et sur l’utilisation des ressources soient disponibles dans les journaux du service de journalisation unifiée (ULS, Unified Logging Service), l’interprétation des données brutes peut être très gourmande en temps. Avec le tableau de bord du développeur, tous les renseignements connexes sont corrélés, ce qui permet d’identifier ces types de problèmes beaucoup plus facilement.

Quelles sont les informations capturées ?

Le tableau de bord du développeur contient un mécanisme extensible permettant de mesurer différents compteurs de performance dans différentes étendues. Dans le tableau de bord du développeur, les compteurs de performance suivants sont utilisés pour surveiller l’utilisation et la consommation des ressources à chaque étape des demandes.

Compteurs par thread

Ces compteurs mesurent des valeurs pour la requête ou le travail du minuteur actuels :

  • durée d’exécution des threads ;

  • numéro, durée, informations sur la pile des appels et texte de requête de chaque requête SQL Server générée par la page ;

  • numéro, durée et informations sur la pile des appels de chaque appel WCF ;

  • URL ou nom du travail du minuteur ;

  • utilisateur actuel ;

  • heure de début de l’exécution ;

  • toutes les statistiques précédentes pour le code délimité par SPMonitoredScope (voir Utilisation de SPMonitoredScope).

Les données précédentes sont écrites à deux emplacements à la fin de chaque demande ou travail du minuteur :

  • Journal ULS : Toutes les statistiques collectées pour une étendue spécifique sont toujours consignées dans le journal du service ULS.

  • Tableau de bord du développeur : les statistiques de performances pour une demande sont disponibles dans la fenêtre du navigateur.

Modes d’affichage du tableau de bord

Le tableau de bord du développeur peut être affiché dans les modes suivants :

  • On

    Lorsqu’il est en mode « On », le tableau de bord est affichable sur toutes les pages qui utilisent la page maître par défaut.

  • OnDemand

    Lorsque le tableau de bord du développeur est en mode « OnDemand », une icône est affichée dans la partie supérieure droite de la page. Cette icône permet à l’utilisateur d’activer ou de désactiver le tableau de bord.

    Notes

    Il est important de noter que lorsque le mode d’affichage a pour valeur OnDemand, quiconque dispose des droits pour accéder à la page est en mesure de consulter la sortie produite par le tableau de bord.

Comment activer le tableau de bord du développeur

Le tableau de bord du développeur est toujours désactivé par défaut. Pour le rendre visible, vous devez l’activer, à l’aide de STSADM, d’applets de commande Windows PowerShell ou du modèle objet SharePoint Foundation.

Utilisation de STSADM

Ouvrez une fenêtre de commande au niveau du répertoire %ProgramFiles%\Common Files\Microsoft Shared Debug\Web Server Extensions\14\BIN et tapez l’une des commandes suivantes, en fonction du mode d’affichage souhaité.

Mode

Command

On

stsadm -o setproperty -pn developer-dashboard -pv on

OnDemand

stsadm -o setproperty -pn developer-dashboard -pv ondemand

Utilisation d’applets de commande Windows PowerShell

Mode

Command

On

(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = ”On”

OnDemand

(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = ”OnDemand”

Comment désactiver le tableau de bord du développeur

Utilisation de STSADM

stsadm -o setproperty -pn developer-dashboard -pv off

Sur quelles pages le tableau de bord du développeur s’affiche-t-il ?

Lorsqu’il est activé, le tableau de bord du développeur s’affiche par défaut sur n’importe quelle page qui utilise la page maître SharePoint Foundation 2010 ou sur toute page qui utilise une page maître personnalisée comportant le contrôle Dashboard.

Utilisation du tableau de bord du développeur sur les pages maîtres personnalisées

Deux composants sont requis pour que le tableau de bord s’affiche. Il s’agit du lanceur du tableau de bord du développeur et du contrôle de rendu de page qui restitue la sortie dans la page.

  • Lanceur du tableau de bord du développeur

    Lorsque le mode d’affichage est défini sur OnDemand, le lanceur affiche l’icône de lancement. Il peut être utilisé n’importe où sur la page. L’exemple suivant montre le marquage permettant d’inclure le lanceur dans une page maître.

    <Sharepoint:DeveloperDashboardLauncher
       ID="DeveloperDashboardLauncher"
       href="javascript:ToggleDeveloperDashboard()"
       runat="server"
       ImageUrl="/_layouts/images/fgimg.png"
       Text="<%$Resources:wss,multipages_launchdevdashalt_text%>"
       OffsetX=0
       OffsetY=222
       Height=16
       Width=16 />
    
  • Contrôle de rendu de page

    Le contrôle de rendu doit se trouver au bas du marquage de la page. Si, dans la page, des contrôles se situent sous le contrôle de rendu, aucune mesure les concernant n’est indiquée dans le tableau de bord du développeur.

    <SharePoint:DeveloperDashboard runat="server" />
    

Utilisation du tableau de bord du développeur avec du code personnalisé

Avec l’introduction de la classe SPMonitoredScope, un développeur a la possibilité « d’encapsuler » du code et d’afficher des statistiques d’utilisation de ce code à l’écran. Ces informations peuvent être utilisées pour identifier les éventuels points de défaillance ou, au minimum, les composants qui ne fonctionnent pas comme prévu.

Voir aussi

Concepts

Utilisation de SPMonitoredScope

Éviter la construction superflue d’objets SPWeb et SPSite