KQL para analizar la telemetría de Business Central - Business Central

Breaking

miércoles, 7 de diciembre de 2022

KQL para analizar la telemetría de Business Central

A estas alturas, todos sabemos que usar la telemetría debería ser una prioridad en los entornos de Business Central tanto SaaS como también en los OnPrem.

En este post  te mostraba como conectar la telemetría de Business Central a un Application Insights, pero hoy vamos a ver un pequeño resumen del lenguaje KQL y de qué podemos analizar.

Aquí os dejo la documentación oficial KQL


¿Para qué usamos KQL?

Application Insights guarda la telemetría de Business Central en una tabla que se llama traces (la más común) y en otra tabla llamada PageViews.  En esta última se almacenarán, obviamente las páginas vistas.


Si despliegas las tablas, podrás ver las columnas disponibles para poder consultar.


Una vez recibidos los datos, podemos proceder a analizarlos mediante el lenguaje KQL usado en Application Insights.  Para ello disponemos de un editor de consultas integrado:



Como consultar con KQL

El lenguaje KQL es similar a SQL y con él podemos realizar consultas a nuestros datos para analizarlos.

Ejemplos:

traces  sería equivalente a hacer un SELECT * FROM traces

o por ejemplo:

traces

| project message, customDimensions

sería equivalente a SELECT message, customDimensions FROM traces

where sería equivalente a where de SQL

Aquí te dejo un resumen de las equivalencias entre SQL y KQL:

https://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/sqlcheatsheet


¿que datos podemos analizar de Business Central?

Podemos analizar diferentes informaciones procedentes de Business Central base, como por ejemplo:

- ¿Los accesos a Business Central? ¿Desde donde se han realizado? ¿que páginas se han visto?

-  ¿Se han ejecutado correctamente las colas de proyectos?

- Se ha creado una empresa

- ...

Aquí te dejo toda la telemetría que ofrece Business Central por áreas:

https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/telemetry-area-overview

Las diferentes acciones que podemos analizar, se identifican con un eventId dentro del array customDimensions.   

Aquí te dejo la telemetría pero esta vez por eventId:

https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/telemetry-event-ids

No toda la telemetría, dispone de los mismos campos en customDimensions.  Tendrás que estudiar la documentación de cada acción para comprobar que datos contiene y después poder hacer consultas.


Recuerda que todo lo referente a telemetría va muy rápido.  Es decir, está ampliándose continuamente, por lo que según la versión de Business Central que tengas (especialmente en entornos on-prem) algunas de las características no estarán disponibles.  Comprueba la documentación para saber a partir de que versión está operativa cada una de las mediciones.

Si todavía no te sientes seguro de como hacer consultas, el equipo de Microsoft dispone en Github de muchos ejemplos para poder copiar y adaptar a tus necesidades:


También en nuestras extensiones

Pero no solamente podemos medir lo que Microsoft nos ofrece en la aplicación.  Nosotros en nuestras extensiones, también podemos incluir telemetría personalizada con eventId personalizados:


Alertas

Usar el editor de KQL dentro de Application Insights requiere estár consultando continuamente Azure.  Para evitarlo, podemos generar alertas según nuestras necesidades.  Aquí te dejo un video, donde te muestro como podemos generar una alerta mandando un email, cuando una cola de proyectos falla usando Power Automate.

Te puede servir de ejemplo para crearte tus propias alertas.

Power BI

Si el tema de KQL no te convence, siempre puedes usar la App de Power BI que el equipo de Microsoft genera y actualiza periodicamente, en el que podrás ver casi toda la telemetría de una forma mucho más gráfica:



Puedes descargar la aplicación desde aquí:  

https://appsource.microsoft.com/en-us/product/power-bi/microsoftdynsmb.bc_telemetry_pbi_app


Si quieres saber más sobre la aplicación de Power BI de telemetría, te recomiendo el blog de Javier Armesto donde podrás encontrar información de las últimas actualizaciones:


Conclusiones

La excusa de no saber que ocurre en los servidores y en la base de datos de un Business Central en SaaS se puede desmontar facilmente usando estas herramientas de telemetría.  Ponte a ello cuanto antes.

Si todavía tienes dudas, puedes apuntarte al evento que tendremos en Power Platform Zaragoza en el link: 

https://www.meetup.com/es-ES/power-platform-zaragoza/events/290035850/


En este evento estaremos tratando de resolver las dudas Javier Armesto, Miguel Llorca y yo mismo

Recuerda que puedes seguirme en 

Youtube: https://www.youtube.com/@rcorella donde podrás encontrar muchos contenidos interesantes


No hay comentarios: