Sunday, April 15, 2012

Developer Dash Board in SharePoint 2010

One of the great feature in SharePoint for developers is "Developer Dash Board".

What is Developer Dash Board?

In SharePoint, We can do lot of customization and all our code will be deployed to SharePoint and end users will use it.But, if client comes to you with the question, "why my SharePoint site is loading very slow?" how can we proceed?.

First thing you need to check is all server configurations like memory is sufficient ,processor is sufficient etc.. After you found they are more than enough, now its time to find problem in the code. Till SharePoint 2007, it's very difficult to find which part of the code is taking how much time and analyze it better. BUt luckily in SharePoint 2010, Microsoft added a very nice feature for developers to detect which module is taking how much time. It will record all the requests and the time to get response etc... This is what we are calling "Developer Dashboard".

The great advantage with it is, it will differ the requests and show like, database queries(which query took how much time), SPRequest allocation,wepart event offsets, etc in very detailed way. Its very great and useful to the developers.


How to enable and disable it in sharepoint

Method 1: Using STSADM

STSADM -o setproperty -pn developer-dashboard -pv On (which for always showing dashboard at bottom of the page)

STSADM -o setproperty -pn developer-dashboard -pv Off (which for stop showing dashboard)

STSADM -o setproperty -pn developer-dashboard -pv OnDemand (which for showing dashboard when only dashboard image clicked on that particular page)

I Used "OnDemand" command to enable dashboard

Once the command executed the command the outputis "Operation executed successfully."


Method 2: Using PowerShell script

You need to open the windows power shell prompt and copy the below script and hit enter.

$DevDashboardSettings = [Microsoft.SharePoint.Administration.SPWebService]::ContentService.DeveloperDashboardSettings;
$DevDashboardSettings.DisplayLevel = 'OnDemand';
$DevDashboardSettings.RequiredPermissions = 'EmptyMask';
$DevDashboardSettings.TraceEnabled = $true;
$DevDashboardsettings.Update();

The both above methods will enable developer dashboard to entire farm level.


Now, browse to the web site you can't find it immediately on the screen(because i used "ondemand" command). So need to explicitly enable for the page. Find a small icon at the corner of the page as shown below.(i scroll downed and showing u bottom of the page there is no dashboard on the screen).




That icon behave as a toggle button. when you click very first time then the developer dashboard will be enabled for the specific page at bottom of the page. When you click again then it will go off. You cannot see that until you click it again.


No comments:

Post a Comment