Publié
dimanche 22 janvier 2012 13:48
par
Arnault Nouvel
Dans les billets précédents, nous avons vu comment optimiser les performances d’un environnement SharePoint 2010 qui héberge un site internet grâce au BlobCache et au cache de sortie, . Nous allons voir aujourd’hui comment faire apparaitre le developer dashboard dans le cadre d’un site internet pour diagnostiquer les problèmes de performances liés au code serveur.
Apparu avec SharePoint 2010, le developer dashboard fourni une interface de monitoring des performances directement dans les pages SharePoint. Il est très utile lorsque l’on cherche à optimiser les performances du code serveur de l’application. Une API permet notamment d’y afficher des informations à propos de notre propre code, en particulier la durée d’exécution de portions de code ainsi que des détails sur d’éventuelles exceptions gérées. Je vous invite à consulter l’article de Paul Andrew pour plus de détails sur cette API.
Dans ce billet, nous allons nous intéresser à la manière de le faire apparaitre sur un site internet, dont les particularités sont la connexion anonyme et l’absence de ruban.
Autoriser l’affichage du developer dashboard pour les utilisateurs anonymes
Sur un site internet, l’authentification est anonyme. Par défaut, le developer dashboard (et le bouton OnDemand associé) ne s’affiche que si l’utilisateur courant bénéficie de la permission AddAndCustomizePages, qui n’est pas attribuée aux utilisateurs anonymes. Il est toutefois possible d’afficher le developer dashboard en modifiant le niveau de permission requis.
Voici le script PowerShell que j’utilise :
Add-PSSnapin "Microsoft.SharePoint.Powershell" -ErrorAction SilentlyContinue
$contentService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService
$dds = $contentService.DeveloperDashboardSettings
$dds.DisplayLevel = "OnDemand"
$dds.TraceEnabled = $true;
#pour le rendre actif en mode anonyme
$dds.RequiredPermissions = [Microsoft.SharePoint.SPBasePermissions]::EmptyMask
#pour remettre le niveau de droit par défaut
#$dds.RequiredPermissions = [Microsoft.SharePoint.SPBasePermissions]::AddAndCustomizePages
$dds.Update()
Affichage OnDemand sans bouton
La plupart du temps, et c’est le cas avec le script ci-dessus, je préfère configurer le developer dashboard en mode "OnDemand" qui permet de ne l’afficher qu’en cas de besoin, en appuyant sur un bouton dédié dans le ruban. Mais sur un site internet SharePoint, en général on masque le ruban, et donc le bouton.
L’astuce pour afficher le developer dashboard lorsque le bouton n’est pas visible, c’est d’ajouter developerdashboard=true dans la query string de l’url.
Par exemple : http://mon_site_internet/Pages/accueil.aspx?developerdashboard=true

Arnault Nouvel
MVP SharePoint Server
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :