Profundizando en APP INSIGHTS | Microsoft Azure

El cloud está de moda y cuando lo mezclamos con Microsoft es obligado hablar de Azure. Ya anteriormente en este blog mi compañero Carlos Mendible había dedicado un post a las Application Insights, gestor de rendimiento de aplicaciones.. Y hoy voy a profundizar en este servicio que nos ofrece la nube de Microsoft.

Application Insights es un servicio orientado a desarrolladores que proporciona herramientas para analizar sus aplicaciones y detectar errores de rendimiento y uso. Citando fuentes oficiales (https://docs.microsoft.com/es-es/azure/application-insights/app-insights-overview), y para no dejarme nada, esto es lo que nos ofrece Application Insights:

Herramientas de análisis y diagnóstico:

  • Alertas inteligentes y manuales de los índices de error y otras métricas, así como de la disponibilidad.
  • Gráficos de las métricas agregadas con el paso del tiempo.
  • Búsqueda de diagnósticos en instancias de las solicitudes, excepciones, eventos personalizados, seguimientos de registros, vistas de página, dependencias y llamadas AJAX.
  • Análisis: un lenguaje de consulta eficaz a través de los datos de telemetría
  • Paneles: utilidad de creación de gráficos para supervisar todos los componentes de la aplicación.

Tipos de telemetría:

  • Velocidad de solicitudes HTTP, tiempos de respuesta y niveles de éxito.
  • Tarifas de llamadas (HTTP y SQL) de dependencia, tiempos de respuesta, niveles de éxito.
  • Seguimiento de excepciones de servidor y cliente.
  • Seguimiento de registro de diagnóstico.
  • Recuentos de vistas de página, recuentos de usuarios y sesiones, tiempos de carga del explorador y excepciones.
  • Tarifas de llamadas AJAX, tiempos de respuesta y niveles de éxito.
  • Contadores de rendimiento de servidor.
  • Telemetría personalizada de cliente y servidor.
  • Segmentación por ubicación de cliente, versión de explorador, versión de sistema operativo, instancia de servidor, dimensiones personalizadas, etc.
  • Pruebas de disponibilidad

Pequeño “Jump Start”

Actualmente Visual Studio nos facilita mucho la vida para poder empezar a trabajar con Application Insights. Es tan sencillo como marcar un checkbox en la creación de nuestro proyecto:

application-insights

Esto creará la siguiente estructura de proyecto:

application-insights2

 

Al compilar por primera vez configurará Application Insights modificando el archivo appsettings.config añadiendo la InstrumentationKey del servicio que él mismo se ha encargado de crear en Azure.

application-insights3

Si entramos en el portal de Azure veremos el servicio y podremos comprobar su instrumentation key.

application-insights4

Con esto Azure ya está registrando todas las peticiones que realicemos en nuestra aplicación y ya podríamos empezar a analizarla.

application-insights5

Como veis es muy sencillo añadir Application Insights en nuestra aplicación y poder tener un análisis en tiempo real de su rendimiento.

Aunque el ejemplo es con una aplicación web también podemos añadir Application Insights para monitorizar aplicaciones web y servicios cloud de Azure, aplicaciones .net, aplicaciones java, aplicaciones node.js, aplicaciones SharePoint… La lista completa la podéis encontrar en: https://docs.microsoft.com/en-us/azure/application-insights/app-insights-platforms

Conclusiones

Utilizar Application Insights nos permite tener, en pocos clics, un análisis muy completo del rendimiento/funcionamiento de nuestra aplicación. Delante de clientes nos aporta la capacidad de ser proactivos en la resolución de incidencias. Como se pueden configurar alertas personalizadas podemos recibir un correo electrónico cada vez que la aplicación no esté disponible, que el navegador haya lanzado una excepción, que el cliente tarde mucho en procesar las peticiones, que el tiempo de envío sea elevado…  incluso existen extensiones, por ejemplo para Nlog, que interceptan las trazas que se generan en la aplicación y las manda para Application Insights y así poderlas consultar desde el portal de Azure sin la necesidad de ir al servidor a mirar los archivos.

Finalmente, es importante destacar, que Application Insights no reduce el rendimiento de nuestra aplicación ya que el envío de los datos se realiza mediante un proceso a parte.

Conoce cómo SOGETI puede ayudarte con esta y otras tecnologías Microsoft. Si quiere saber cómo, visita nuestra web

Marçal Montserrat

Software Engineer and Team Lead | Soluciones Microsoft | SOGETI ESPAÑA

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s