Visualización de datos desde Azure Data Explorer en Grafana
Grafana es una plataforma de análisis que permite consultar y visualizar datos y crear y compartir paneles basados en las visualizaciones. Grafana proporciona un complemento para Azure Data Explorer, que permite conectarse a datos desde Azure Data Explorer y visualizarlos. En este artículo, aprenderá a configurar Azure Data Explorer como origen de datos de Grafana y a visualizarlos después desde un clúster de ejemplo.
Use el vídeo siguiente para aprender a usar el complemento Azure Data Explorer de Grafana, configurar Azure Data Explorer como origen de datos de Grafana y, después, visualizar los datos.
En su lugar, puede configurar el origen de datos y visualizar los datos como se detalla en el artículo siguiente.
Prerequisites
- Grafana versión 5.3.0 o una versión posterior para su sistema operativo
- El complemento de Azure Data Explorer para Grafana. Se requiere la versión 3.0.5 o posterior del complemento para usar el generador de consultas de Grafana.
- Un clúster que incluya los datos de ejemplo de StormEvents. Para más información, consulte Inicio rápido: Creación de un clúster y una base de datos de Azure Data Explorer y Inicio rápido: Ingesta de datos de ejemplo en Azure Data Explorer.
El conjunto de datos de ejemplo de StormEvents contiene datos relacionados con el tiempo de los National Centers for Environmental Information.
Configuración del origen de datos
Realice los pasos siguientes para configurar Azure Data Explorer como origen de datos para la herramienta de panel. Trataremos estos pasos con más detalle en esta sección:
Cree una entidad de servicio de Azure Active Directory (Azure AD). La herramienta de panel usa la entidad de servicio para acceder al servicio de Azure Data Explorer.
Agregue la entidad de servicio de Azure AD al rol visores en la base de datos de Azure Data Explorer.
Especifique las propiedades de conexión de la herramienta de panel en función de la información de la entidad de servicio de Azure AD y, después, pruebe la conexión.
Creación de una entidad de servicio
Puede crear la entidad de servicio en Azure Portal o mediante la experiencia de línea de comandos de la CLI de Azure. Independientemente del método que utilice, después de crear la entidad, obtendrá los valores de cuatro propiedades de conexión que usará en pasos posteriores.
Portal de Azure
Para crear la entidad de servicio, siga las instrucciones de la documentación de Azure Portal.
En la sección Asignación de la aplicación a un rol, asigne un tipo de rol de lector al clúster de Azure Data Explorer.
En la sección Obtención de valores para iniciar sesión, copie los tres valores de propiedad indicados en los pasos: Id. de directorio (Id. de inquilino), Id. de aplicación y Contraseña.
En Azure Portal, seleccione Suscripciones y copie el identificador de la suscripción en la que creó la entidad de servicio.

Azure CLI
Crear una entidad de servicio. Establezca un ámbito adecuado y un tipo de rol de
reader.az ad sp create-for-rbac --name "https://{UrlToYourDashboard}:{PortNumber}" --role "reader" \ --scopes /subscriptions/{SubID}/resourceGroups/{ResourceGroupName}Para más información, vea Creación de una entidad de servicio de Azure con la CLI de Azure.
El comando devuelve un conjunto de resultados similar al siguiente. Copie los tres valores de propiedad: id_aplicación, contraseña e inquilino.
{ "appId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "displayName": "{UrlToYourDashboard}:{PortNumber}", "name": "https://{UrlToYourDashboard}:{PortNumber}", "password": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "tenant": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" }Obtenga una lista de las suscripciones.
az account list --output tableCopie el identificador de suscripción apropiado.

Adición de la entidad de servicio al rol visores
Ahora que ya tiene una entidad de servicio, agréguela al rol visores en la base de datos de Azure Data Explorer. Puede realizar esta tarea en Permisos en Azure Portal o en Consulta mediante un comando de administración.
Azure Portal (Permisos)
En Azure Portal, vaya al clúster de Azure Data Explorer.
En la sección Introducción, seleccione la base de datos con los datos de ejemplo de StormEvents.

Seleccione Permisos y luego Agregar.

En Add database permissions (Agregar permisos de base de datos), seleccione el rol Visor y después Select principals (Seleccionar entidades).

Busque la entidad de servicio que se ha creado. Seleccione la entidad y después Seleccionar.
Seleccione Guardar.
Comando de administración (Consulta)
En Azure Portal, vaya al clúster de Azure Data Explorer y seleccione Consulta.
Ejecute el comando siguiente en la ventana de consulta. Use el identificador de la aplicación y el identificador de inquilino de Azure Portal o la CLI.
.add database {TestDatabase} viewers ('aadapp={ApplicationID};{TenantID}')El comando devuelve un conjunto de resultados similar al siguiente. En este ejemplo, la primera fila es para un usuario existente en la base de datos y la segunda fila es para la entidad de servicio que se acaba de agregar.

Especificar propiedades y probar la conexión
Con la entidad de servicio asignada al rol visores, ahora puede especificar propiedades en la instancia de Grafana y probar la conexión a Azure Data Explorer.
En Grafana, en el menú izquierdo, seleccione el icono de engranaje y, a continuación, Data Sources (Orígenes de datos).

Seleccione Add data source(Agregar origen de datos).
En la página Data Sources / New (Orígenes de datos / Nuevo), escriba un nombre para el origen de datos y, a continuación, seleccione el tipo Azure Data Explorer Datasource (Origen de datos de Azure Data Explorer).

En Configuraciónconnection details (Detalles de conexión), escriba el nombre del clúster con el formato https://{ClusterName}.{ Región}.kusto.windows.net. Especifique los demás valores desde Azure Portal o la CLI. Consulte la tabla debajo de la imagen siguiente para una asignación.

UI de Grafana Azure portal CLI de Azure Id. de suscripción ID. DE SUSCRIPCIÓN SubscriptionId Identificador de inquilino Identificador de directorio tenant Id. de cliente Identificador de aplicación appId Secreto del cliente Contraseña password Seleccione Guardar prueba.
Si la prueba se realiza correctamente, vaya a la sección siguiente. Si tiene algún problema, compruebe los valores especificados en Grafana y revise los pasos anteriores.
Optimización de consultas
Hay dos características que se pueden usar para la optimización de las consultas:
- Optimización del rendimiento de representación de las consultas en el panel
- Habilitación de la coherencia débil
Para realizar la optimización, en Data SourcesConfiguraciónQuery Optimizations(Optimizaciones de consultas), realice los cambios necesarios.
Optimización del rendimiento de la representación de las consultas en el panel mediante el almacenamiento en caché de los resultados de la consulta
Cuando un panel o un objeto visual se representan más de una vez por parte de uno o varios usuarios, Grafana, de forma predeterminada, envía al menos una consulta a Azure Data Explorer. Habilite Query results caching (Almacenamiento en caché de los resultados de la consulta) para mejorar el rendimiento de la representación del panel y reducir la carga en el clúster de Azure Data Explorer. Durante el intervalo de tiempo especificado, Azure Data Explorer usará la memoria caché de resultados para recuperar los resultados anteriores y no ejecutará una consulta innecesaria. Esta funcionalidad es especialmente eficaz para reducir la carga en los recursos y mejorar el rendimiento cuando varios usuarios usan el mismo panel.
Para habilitar la representación de la memoria caché de resultados, realice lo siguiente en el panel Query Optimizations (Optimizaciones de consultas):
- Deshabilite Use dynamic caching (Usar almacenamiento en caché dinámico).
- En Cache Max Age (Vigencia máxima de la memoria caché), especifique el número de minutos durante los cuales desea utilizar los resultados almacenados en caché.
Habilitación de la coherencia débil
Los clústeres están configurados con coherencia segura. Esto garantiza que los resultados de la consulta estén actualizados con todos los cambios del clúster. Al habilitar la coherencia débil, los resultados de la consulta pueden tener un retraso de 1 a 2 minutos después de las modificaciones del clúster. Por otro lado, la coherencia débil puede mejorar el tiempo de la representación visual. Por lo tanto, si la coherencia inmediata no es crítica y el rendimiento es marginal, habilite la coherencia débil para mejorar el rendimiento. Para más información sobre la coherencia de las consultas, consulte Coherencia de consultas.
Para habilitar la coherencia débil, en el panel Optimizaciones de consultasCoherencia de datos,seleccione Débil.
Visualización de datos
Ahora que ya ha terminado de configurar Azure Data Explorer como origen de datos para Grafana, es el momento de visualizar los datos. Vamos a mostrar un ejemplo básico con el modo del generador de consultas y el modo Raw del editor de consultas. Se recomienda revisar Escribir consultas para Azure Data Explorer para obtener ejemplos de otras consultas ejecutadas en el conjunto de datos de ejemplo.
En Grafana, en el menú izquierdo, seleccione el icono del signo más y después Dashboard (Panel).

En la pestaña Add (Agregar), seleccione Add new panel (Agregar nuevo panel).

En el panel de gráfico, seleccione Panel Title (Título del panel) y después Edit (Editar).

En la parte inferior del panel, seleccione Data Source (Origen de datos) y después seleccione el origen de datos que ha configurado.

Modo Generador de consultas
El editor de consultas tiene dos modos. El modo Generador de consultas y el modo Raw. Utilice el modo Generador de consultas para definir la consulta.
Debajo del origen de datos, seleccione Database (Base de datos) y elija la base de datos en la lista desplegable.
Seleccione From (Desde) y elija la tabla en la lista desplegable.
Una vez definida la tabla, filtre los datos, seleccione los valores que se van a presentar y defina la agrupación de esos valores.
Filtrar
- Haga clic en + a la derecha de + (Donde [filtro]) para seleccionar en la lista desplegable una o más columnas de la tabla.
- Para cada filtro, defina los valores mediante el operador aplicable. Esta selección es similar a usar el operador where en el lenguaje de consulta Kusto.
Selección de valores
- Haga clic en + a la derecha de + (Columnas de valores) para seleccionar en el desplegable las columnas de valores que se mostrarán en el panel.
- Para cada columna de valores, establezca el tipo de agregación. Se pueden establecer una o varias columnas de valores. Esta selección es equivalente a usar el operador summarize (resumir).
Agrupación de valores
Haga clic en + a la derecha de + (Agrupar por [resumir]) para seleccionar en la lista desplegable una o más columnas que se utilizarán para organizar los valores en grupos. Esto es equivalente a la expresión group en el operador summarize.Para ejecutar la consulta, seleccione Run query (Ejecutar consulta).
Sugerencia
Al finalizar la configuración del generador de consultas, se crea una consulta del lenguaje de consulta Kusto. Esta consulta muestra la lógica que ha creado con el editor de consultas gráfico.
Seleccione Edit KQL (Editar KQL) para pasar al modo Raw y editar la consulta con la flexibilidad y la eficacia del lenguaje de consulta Kusto.
Modo Raw
Use el modo Raw para editar la consulta.
En el panel de consulta, copie la siguiente consulta y después seleccione Run Query (Ejecutar consulta). La consulta desglosa el recuento de eventos por día para el conjunto de datos de ejemplo.
StormEvents | summarize event_count=count() by bin(StartTime, 1d)
El gráfico no muestra ningún resultado porque su ámbito predeterminado son los datos de las seis últimas horas. En el menú superior, seleccione Last 6 hours (Últimas 6 horas).

Especifique un intervalo personalizado que abarque 2007, el año incluido en el conjunto de datos de ejemplo StormEvents. Seleccione Aplicar.

Ahora el gráfico muestra los datos de 2007, desglosados por días.

En el menú superior, seleccione el icono guardar:

Importante
Para cambiar al modo del generador de consultas, seleccione Switch to builder (Cambiar al generador de consultas). Grafana convertirá la consulta en la lógica disponible en el generador de consultas. La lógica del generador de consultas es limitada y, por lo tanto, puede perder los cambios manuales realizados en la consulta.
Creación de alertas
En Panel principal, seleccione Canales de notificaciónde alertas para crear un nuevo canal de notificación.

Cree un Canal de notificación y, luego, elija Guardar.

En el Panel, seleccione Editar en el menú desplegable.

Seleccione el icono de campana de alerta para abrir el panel Alertar. Seleccione Crear alerta. Complete estas propiedades en el panel Alerta.

Seleccione el icono Save dashboard (Guardar panel) para guardar los cambios.
Pasos siguientes
- Write queries for Azure Data Explorer (Escritura de consultas del Explorador de datos de Azure)