Arquitectura, buenas prácticas y desarrollo sobre la nueva herramienta de Microsoft SharePoint 2016

[SharePoint 2013] El Panel de Desarrollador

Continuando con la entrada anterior,  vamos a añadir proceso para que una vez tengamos nuestro desarrollo en un estado interesante de desarrollo, pues realizar unos determinados procesos para verificar que nuestra aplicación cumple con la calidad y el nivel de excelencia exigido.

Ademas de las pruebas unitarias, hay muchos más aspectos que mirar y evaluar. Tenemos que saber realmente si nuestra aplicación es rápida o no?. La definición de rápida depende de la persona que este detrás de la pantalla, pero yo lo defino como el tiempo que el usuario tarda en volver a pulsar el ratón. Por lo que para ello tendremos que medir el tiempo de carga de la página ahora que esta de moda que todo se ejecute en la zona cliente no podemos permitirnos el lujo que una página tarde en cargar más de la cuenta. También tenemos que saber que parte de nuestra aplicación esta provocando este tiempo atasco. Para ello SharePoint incluye un panel de Desarrollador, es una herramienta que ya estaba en versiones anteriores, pero el echo de que la tengas que activar bien a través de comandos de PowerShell bien realizando un desarrollo propio pues hace que mucha gente no la utilice y utilice otros tipos de mediciones no tan exactas. El panel del desarrollador  proporciona información de diagnóstico que puede ayudar a los programadores o administradores del sistema a solucionar problemas relacionados con componentes de la página que, en caso contrario, serían muy difíciles de aislar.

Aunque a primera vista se puede pensar si a mi no me hace falta saber si la página va lenta o no, eso se ve cargando la página. Efectivamente en esa parte tiene toda la razón, pero este panel de desarrollador no solo es un medidor de tiempo sino que proporciona una serie de datos muy valiosos y que nos indican bien a las claras que parte de nuestra aplicación necesita una mejora. La información que muestra es completísima desde el número de accesos que realizamos a la BD, lo que si es una página relativamente simple y tiene un número elevado de accesos nos indica que debemos buscar en nuestro desarrollo algún proceso que nos haga reducir este número de accesos (algo parecido a lo que comente en el anterior post de accesos a lista.). El tiempo de carga de cada WebPart por lo que sabemos realmente donde tenemos el cuello de botella si un webpart hace un calculo excesivo o tiene una lógica excesiva pues entonces tenemos que hacer alguna acción para mejorar este WebPart.

Dicho este preámbulo, tenemos dos formas de utilizarla una con los comandos de PowerShell que activen/desactive el panel de desarrollador y otra mostrarlo ocultarlo mediante programación.  Por lo general para un entorno de desarrollo lo realizo directamente con comandos PowerShell (entre otras cosas por si se me olvida ocultarlo no pasa nada :)= ). Pero para entornos de Producción prefiero tener un WebPart en el que activo o desactivo el panel de desarrollador principalmente por que motivo cuando estas en un entorno de producción no vas a entrar en el servidor por temas de seguridad accesos por lo que de esta forma no hace falta que entres a la administración y no dependes de nadie.

Para activar el Panel de Desarrollador con Comandos de PowerShell bastaria ejecutar estos comandos:

$svc=[Microsoft.SharePoint.Administration.SPWebService]::ContentService
$ddsetting=$svc.DeveloperDashboardSettings
$ddsetting.DisplayLevel=[Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]::OnDemand
$ddsetting.Update()

Aqui hay que hacer una aclaración el valor que tiene esto etiqueta [Microsoft.SharePoint.Administration.SPDeveloperDashboardLevel]: puede ser ON, lo activamos, OFF lo ocultamos y OnDemand se muestra un icono en la parte del nombre.

La otra opción que comentaba es realizarlo mediante el modelo de Objetos de Servidor, para ello hay que añadir estas referencias Microsoft.SharePoint y Microsoft.SharePoint.Adminitration. Añadimos el siguiente código en nuestro desarrollo y podemos mostrar y ocultar el Panel de Desarrollador:

SPWebService spwService = SPWebService.ContentService;
spwService.DeveloperDashboardSettings.DisplayLevel = SPDeveloperDashboardLevel.On;
spwService.DeveloperDashboardSettings.Update();

Una vez realizado esto se mostraría una imagen como la siguiente:

Mi recomendación es que el panel del desarrollador lo tenemos que tener siempre presente, siempre es bueno cuando tenemos un webpart implementado mirar haber que sale en el panel, esto nos evita posteriormente fallos en producción y por lo tanto ganamos tiempo y evitamos cualquier incidencia antes de que se produzca. También hay que saber interpretar los datos que da y una buena interpretación de los mismos nos hace ganar muchísimo tiempo.

mm

Sobre Adrián Díaz

Adrián Díaz es Ingeniero Informático por la Universidad Politécnica de Valencia. Es MVP de Microsoft en la categoría Office Development desde 2014, MCPD de SharePoint 2010, Microsoft Active Profesional y Microsoft Comunity Contribuitor 2012. Cofundador del grupo de usuarios de SharePoint de Levante LevaPoint. Lleva desarrollando con tecnologías Microsoft más de 10 años y desde hace 3 años está centrado en el desarrollo sobre SharePoint. Actualmente es Software & Cloud Architect Lead en ENCAMINA.
Esta entrada ha sido publicada en desarrollo. Enlace permanente.
Suscríbete a Desarrollando sobre SharePoint

Suscríbete a Desarrollando sobre SharePoint

Recibe todas las actualizaciones semanalmente de nuestro blog

You have Successfully Subscribed!

ENCAMINA, piensa en colores