Queries Profiler UI: Dashboard para profiling de Queries

Introducción

En la release 4.2 se creó un sistema de métricas de consultas para tener mayor información sobre las consultas que se ejecutan en el sistema (estas métricas se almacenan en la Entidad QueryMetrics).

Para la versión 4.3.0 se ha creado una nueva UI (construida como un dashboard) que permite hacer un completo profiling de las consultas que se ejecutan dentro de plataforma.

¿Desde dónde se accede y quién tiene permisos para verlo?

Sólo pueden verlo usuarios con rol administrador de la plataforma.

El acceso es a partir de esta entrada del menú:

Tools → Queries Profiler UI

Páginas que componen el dashboard

Este dashboard está compuesto por dos páginas.

Es posible navegar entre ellas con estas pestañas.

 

Summary Report:

Esta vista muestra KPIs, que permiten extraer conclusiones sobre que consultas realizadas son más lentas, el total de consultas agrupadas en el tiempo, comparativas sobre la medía de tiempo empleado en la consulta en función del origen, o el total de consultas y de errores a partir de estos o de los usuarios. Además se permite el filtrado de los datos por lo que se puede focalizar la información por ejemplo para determinados tipos de consulta, usuarios, entidades, …

Detail

En esta vista se tiene acceso a la información de todas las consultas que se realizan en plataforma, si se han ejecutado correctamente o si han dado error, si el tipo de consulta es SQL o MONGO, el componente desde el que se ha lanzado sea Control Panel, Dashboard Engine, u otro, los milisegundos que ha tardado en ejecutarse la entidad principal que se ha consultado, etc.

 

Composición página Summary Report

A continuación fragmentaremos en los distintos componentes la vista Summary Report:

Formulario de filtrado:

Comparativa de las medias del consumo de las consultas en función del origen de estas.

Gráfica que muestra el acumulado de consultas por origen, permite hacer zoom con el ratón, visualizarlo como barras o líneas y descargarlo como imagen.

Total de errores por usuario, muestra el acumulado de consultas que han dado error por usuario permitiendo compararlos visualmente como aquí por ejemplo donde se ve claramente que hay un usuario con muchas más consultas erróneas que el resto.

Muestra una gráfica ordenada de mayor a menor número total de consultas por usuario. Como en la gráfica de barras anterior, se permite hacer zoom con el ratón, visualizarlo como barras o líneas y descargarlo como imagen.

En este caso, la comparativa se realiza en función del origen de la consulta, mostrándose el total de consultas erróneas y el porcentaje por origen

Esta gráfica permite visualizar el total de consultas por fecha para el último día, últimos 30 días, 60 días o tres meses.

 

Esta tabla muestra la información relativa a las diez consultas que han tardado más en realizarse, pudiéndose expandir para mostrar todos los detalles de la consulta, como la propia consulta, el tipo de consulta, …

Estos KPIs muestran el total de consultas y el total de consultas erróneas con el porcentaje que representan.

 

Composición página Detail

A continuación fragmentaremos en los distintos componentes la vista

Formulario de filtrado:

En él podemos ver que uno de los selectores o filtros permite seleccionar intervalos de fechas, para simplificar la búsqueda, pudiendo ver los registros de la última hora, las últimas 12 horas, …

Este componente permite filtrar la búsqueda en un rango de tiempo empleado en la ejecución de las consultas. El 100% estaría por encima de la consulta más costosa.

Tabla paginada en servidor con la información de las consultas. Puede ordenarse por los distintos campos. Se muestra en verde o rojo dependiendo del estado y del tiempo consumido por la consulta. La información puede estar filtrada por el formulario anterior, con lo que es mucho más fácil encontrar las consultas para detectar posibles errores.