Configure Azure Log Analytics para Power BI

Power BI se integra con Azure Log Analytics para permitir que administradores y propietarios de áreas de trabajo Premium configuren una conexión de Log Analytics a su suscripción de Power BI. En este artículo se describe cómo funciona la integración entre Log Analytics y Power BI, y cómo configurarla para el entorno.

Hay dos elementos para que Azure Log Analytics funcione para Power BI:

  • Configure su suscripción en Azure Portal.
  • Habilite Log Analytics para Power BI en el portal de administrador de Power BI.

Las secciones siguientes lo conducen a través de los pasos a realizar de cada una.

Screenshot of the Azure connections tab open in the settings pane.

Requisitos previos

Para poder configurar la integración de Log Analytics desde Power BI, debe crear un área de trabajo de Log Analytics en Azure Portal. También debe conceder permiso en Azure para que el servicio de Power BI escriba registros. Los requisitos exactos son los siguientes:

  • Acceso de colaborador a la suscripción de Azure.
  • Registre el proveedor de recursos "microsoft.insights" en la suscripción de Azure donde recopilará los datos de registro de Power BI.
  • El usuario que configurará la integración de Log Analytics en Power BI debe tener el rol Colaborador de Log Analytics del área de trabajo de Log Analytics. Vea las preguntas más frecuentes sobre soluciones alternativas si no se puede asignar el rol Propietario.

Habilite el proveedor de recursos "microsoft.insights"

Log Analytics necesita que se habilite el proveedor de recursos "microsoft.insights" en el nivel de suscripción de Azure. Los pasos siguientes le guían por el proceso.

  1. Inicie sesión en Azure Portal y seleccione la suscripción que quiere usar con Log Analytics y que contiene las áreas de trabajo de Log Analytics. En la sección Configuración, seleccione Proveedores de recursos, como se muestra en la siguiente imagen.

    Screenshot of the settings menu options, resource providers is selected.

  2. Busque microsoft.insights enProveedores de recursos. Después, seleccione Register (Registrar).

    Screenshot of resource providers in the main pane with Microsoft.insights is registered.

Establecimiento de permisos

  1. Asegúrese de que el usuario que configure la integración de Log Analytics tenga el rol Colaborador de Log Analytics del área de trabajo de Log Analytics. Al seleccionar Control de acceso (IAM) para la suscripción en Azure Portal y, después, Asignaciones de roles en las selecciones superiores del panel, el usuario actual deberá ver al menos una entrada: Colaborador de Log Analytics para el usuario que configurará Log Analytics:

    Screenshot of the Access control pane with role highlighted.

Una vez que se han completado estas etapas, finaliza la parte de configuración de Azure Log Analytics. En la sección siguiente se muestra cómo continuar y completar la configuración en el portal de administración de Power BI.

Permita el registro de nivel de área de trabajo desde el portal de administrador

Un administrador de Power BI debe completar el siguiente paso a fin de habilitar Azure Log Analytics para áreas de trabajo de Power BI Premium. Esta configuración permitirá a los administradores de áreas de trabajo de Power BI Premium enviar sus registros de área de trabajo a Azure Log Analytics cuando se hayan cumplido los requisitos previos.

  1. En el Portal de administrador de Power BI, vaya a Configuración de inquilinos > Configuración de auditoría y uso y expanda Conexiones de Azure Log Analytics para administradores del área de trabajo. Para permitir que los administradores del área de trabajo habiliten Log Analytics, cambie el control deslizante a Habilitado y especifique los grupos de seguridad necesarios en Aplicar a, tal como se muestra en la imagen siguiente.

    Screenshot of tenant settings in the Admin portal. Azure log analytics connections for workspace administrators is expanded and enabled.

Configure el registro en un área de trabajo Premium

  1. En el área de trabajo Premium, los administradores pueden habilitar Log Analytics. Para ello, vaya a Configuración como se muestra en la imagen siguiente.

    Screenshot of the settings pane in a Premium workspace.

  2. En el panel Configuración, seleccione Conexiones de Azure y expanda Log Analytics, como se muestra en la imagen siguiente.

    Screenshot of the Azure connections tab open in the settings pane, Log Analytics is expanded.

  3. Seleccione la suscripción de Azure, el grupo de recursos y, después, el área de trabajo de Log Analytics configurada en la sección anterior. A continuación, elija Guardar. Cuando se completa correctamente, la sección expandida de Log Analytics de nivel de inquilino tendrá un aspecto similar al de la imagen siguiente.

    Screenshot of the Azure connections tab open in the settings pane showing sample information.

Desconexión de Azure Log Analytics

Puede desconectarse de Azure Log Analytics para dejar de enviar registros a Azure. Para desconectarse, en la Configuración de área de trabajo de Power BI, vaya a la configuración de Log Analytics. Seleccione Desconectar de Azure. A continuación, elija Guardar para desconectar.

Screenshot of the disconnect warning on the settings pane.

Nota:

Cuando se desconecta un área de trabajo de Power BI de Azure Log Analytics, los registros no se eliminan. Los datos permanecen y siguen las directivas de almacenamiento y retención que estableció allí.

Escenarios de uso

Hay muchas maneras en que Azure Log Analytics y Power BI pueden ayudar a resolver los desafíos reales de la organización. Tenga en cuenta lo siguiente.

  • Identificación de períodos de actividad alta o inusual del motor de Analysis Services por capacidad, área de trabajo, informe o usuario.
  • Análisis del rendimiento de las consultas y las tendencias, incluidas las operaciones de DirectQuery externas.
  • Analice la duración de la actualización del modelo semántico, las superposiciones y los pasos de procesamiento.
  • Análisis de las operaciones personalizadas enviadas mediante el punto de conexión XMLA Premium.

Envíe comentarios a la Comunidad de Power BI sobre cómo usa el registro y de que manera esto ayudó a la organización.

Condiciones de error y soluciones

En la tabla siguiente se proporciona una colección de errores comunes, los eventos o configuraciones que los desencadenan y las resoluciones sugeridas.

Condición desencadenadora Tipo Mensaje
No tiene permiso para escribir en el área de trabajo de Log Analytics Error: no se puede continuar Necesita permisos de escritura en esta área de trabajo de Log Analytics para conectarla a Power BI. Póngase en contacto con la persona de la organización que administre las suscripciones de Azure para solucionar este problema.
No tiene permiso para escribir en la cuenta del área de trabajo de Log Analytics Error: no se puede continuar Necesita permisos de escritura en esta área de trabajo de Log Analytics para conectarla a Power BI.
No tiene acceso a ninguna suscripción de Azure Error: no se puede continuar No tiene acceso a ninguna suscripción de Azure. Pida a la persona que administra las suscripciones de Azure de la organización que le conceda acceso de colaborador o superior.
No tiene acceso a ningún área de trabajo de Azure Log Analytics dentro de esa suscripción Error: no se puede continuar No tiene acceso a un área de trabajo de Azure Log Analytics. Pida a la persona que administra las suscripciones de Azure de la organización que le agregue al rol de colaborador o propietario de Log Analytics.
Log Analytics de nivel de área de trabajo deshabilitado al intentar conectarse Información Pida al administrador del inquilino que conceda a los administradores del área de trabajo permiso para conectar áreas de trabajo de Log Analytics.
Log Analytics de nivel de área de trabajo deshabilitado al intentar desconectarse Información El administrador del inquilino ha revocado el permiso para que los administradores del área de trabajo conecten sus propias áreas de trabajo de Azure Log Analytics. Si se desconecta, no podrá conectarse a otra.

Eventos y esquema

Después de habilitar Azure Log Analytics, comienza a registrar las siguientes categorías de eventos. Para obtener más información sobre estos eventos, vea Eventos de seguimiento de Analysis Services.

  • AggregateTableRewriteQuery
  • Comando
  • Deadlock
  • DirectQuery
  • Descubra
  • Error
  • ProgressReport
  • Consultar
  • Inicialización de sesión
  • VertiPaqSEQuery
  • notificación

En la siguiente tabla se describe el esquema.

Propiedad Propiedad de Azure Analysis Services existente Descripción
TimeGenerated Marca de tiempo (UTC) de cuando se generó el registro.
OperationName EventClass_s Operación asociada al registro.
CorrelationId Identificador de los eventos correlacionados. Se puede utilizar para identificar eventos correlacionados en varias tablas.
PowerBIWorkspaceId Identificador único del área de trabajo que contiene el artefacto sobre el que se opera.
PremiumCapacityId Identificador único de la capacidad Premium en la que se hospeda el artefacto sobre el que se opera.
ApplicationContext ApplicationContext_s Contenedor de propiedades de identificadores únicos que proporcionan detalles sobre la aplicación que ejecuta la solicitud. Por ejemplo, id. de informe.
ApplicationName ApplicationName_s Contiene el nombre de la aplicación cliente que ha creado la conexión con el servidor. Esta columna se rellena con los valores que pasa la aplicación, en lugar de con el nombre que se muestra para el programa.
ArtifactId Identificador único del recurso que registra los datos.
ArtifactKind Tipo de artefacto que registra la operación, por ejemplo, modelo semántico.
CpuTimeMs CPUTime_s Cantidad de tiempo de CPU (en milisegundos) que utiliza el evento.
ArtifactName DatabaseName_s Nombre del artefacto de Power BI que registra esta operación.
LogAnalyticsCategory Único Categoría de los eventos, como Audit/Security/Request.
DatasetMode Modo del modelo semántico. Importación, DirectQuery o Composición.
DurationMs Duration_s Cantidad de tiempo (en milisegundos) que tarda la operación.
Usuario User_s Usuario asociado a la operación en ejecución. Se utiliza cuando se debe suplantar la identidad de un usuario final en el servidor.
ExecutingUser EffectiveUsername_s El usuario que ejecuta la operación.
OperationDetailName EventSubclass_s Más información sobre la operación.
XmlaObjectPath ObjectPath_s Ruta del objeto. Lista separada por comas de elementos primarios, empezando por el elemento primario del objeto.
PowerBIWorkspaceName Nombre del área de trabajo de Power BI que contiene el artefacto.
StatusCode Error_s Código de estado de la operación. Indica si es correcta o no.
ProgressCounter ProgressTotal_s Contador del progreso.
XmlaProperties RequestProperties_s Propiedades de la solicitud XMLA.
XmlaSessionId SPID_s Identificador de la sesión de Analysis Services.
Level Severity_s Contiene el nivel de gravedad de la operación que se registra. Correcto, Informativo, Advertencia o Error.
Identidad Información sobre el usuario y las notificaciones.
Estado Estado de la operación.
EventText TextData_s Contiene información detallada asociada a la operación, por ejemplo, consulta DAX.
CustomerTenantId Identificador del inquilino de Power BI del cliente.
XmlaRequestId RootActivityId_g Identificador único de la solicitud.
ReplicaId Identificador de réplica que le permitirá identificar la réplica cuando esté habilitada la Escalabilidad horizontal de consulta (QSO). La réplica de lectura y escritura siempre tiene ReplicaId='AAA' y las réplicas de solo lectura tienen ReplicaId a partir de "AAB". Para los modelos semánticos no habilitados para QSO, el ReplicaId es siempre 'AAA'.

Consultas KQL de Log Analytics de ejemplo

La siguiente colección de consultas de muestras puede ser útil al usar Azure Log Analytics con Power BI. Se pueden ejecutar directamente en Azure Portal o mediante las API para consultar los datos más recientes, normalmente entre 5 y 10 minutos de antigüedad.

// log count per day for last 30d
PowerBIDatasetsWorkspace
| where TimeGenerated > ago(30d)
| summarize count() by format_datetime(TimeGenerated, 'yyyy-MM-dd')


// average query duration by day for last 30d
PowerBIDatasetsWorkspace
| where TimeGenerated > ago(30d)
| where OperationName == 'QueryEnd'
| summarize avg(DurationMs) by format_datetime(TimeGenerated, 'yyyy-MM-dd')


//query duration percentiles for a single day in 1 hour bins
PowerBIDatasetsWorkspace
| where TimeGenerated >= todatetime('2021-04-28') and TimeGenerated <= todatetime('2021-04-29')
| where OperationName == 'QueryEnd'
| summarize percentiles(DurationMs, 0.5, 0.9) by bin(TimeGenerated, 1h)


// refresh durations by workspace and semantic model for last 30d
PowerBIDatasetsWorkspace
| where TimeGenerated > ago(30d)
| where OperationName == 'CommandEnd'
| where ExecutingUser contains 'Power BI Service'
| where EventText contains 'refresh'
| project PowerBIWorkspaceName, DatasetName = ArtifactName, DurationMs

// query count, distinctUsers, avgCPU, avgDuration by workspace for last 30d
PowerBIDatasetsWorkspace  
| where TimeGenerated > ago(30d)
| where OperationName == "QueryEnd" 
| summarize QueryCount=count()
    , Users = dcount(ExecutingUser)
    , AvgCPU = avg(CpuTimeMs)
    , AvgDuration = avg(DurationMs)
by PowerBIWorkspaceId

Plantilla de informe de Power BI de ejemplo

Explore y obtenga información sobre los datos de Power BI de Azure Log Analytics mediante una plantilla de informe de Power BI de código abierto en GitHub.

Los artículos siguientes pueden ayudarle a obtener más información sobre Power BI y su integración con Azure Log Analytics.