Configurare Azure Log Analytics per Power BI

Power BI si integra con Azure Log Analytics per consentire agli amministratori e ai proprietari dell'area di lavoro Premium di configurare una connessione di Log Analytics alla sottoscrizione di Power BI. Questo articolo descrive come funziona l'integrazione tra Log Analytics e Power BI e come configurarla per l'ambiente.

Per usare Azure Log Analytics per Power BI sono disponibili due elementi:

  • Configurare la sottoscrizione di Azure nel portale di Azure.
  • Abilitare Log Analytics per Power BI nel portale di Power BI Amministrazione.

Le sezioni seguenti illustrano i passaggi in per eseguire entrambe le operazioni.

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

Prerequisiti

Prima di poter configurare l'integrazione di Log Analytics da Power BI, è necessario creare un'area di lavoro Log Analytics nel portale di Azure. È anche necessario concedere l'autorizzazione in Azure per l'servizio Power BI di scrittura dei log. I requisiti esatti sono:

  • Accesso collaboratore alla sottoscrizione di Azure.
  • Registrare il provider di risorse "microsoft.insights" nella sottoscrizione di Azure in cui verranno raccolti i dati di log di Power BI.
  • L'utente che configura l'integrazione di Log Analytics in Power BI deve essere nel ruolo Collaboratore Log Analytics per l'area di lavoro Log Analytics. Vedere Domande frequenti per le soluzioni alternative se non è possibile specificare il ruolo Proprietario.

Abilitare il provider di risorse "microsoft.insights"

Log Analytics richiede che il provider di risorse "microsoft.insights" sia abilitato a livello di sottoscrizione di Azure. I passaggi seguenti illustrano il processo.

  1. Accedere al portale di Azure, selezionare la sottoscrizione da usare con Log Analytics e che contiene le aree di lavoro Log Analytics. Nella sezione Impostazioni selezionare Provider di risorse come illustrato nell'immagine seguente.

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

  2. Cercare microsoft.insights in Provider di risorse. Selezionare quindi Register (Registra).

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

Impostare le autorizzazioni

  1. Assicurarsi che l'utente che configura l'integrazione di Log Analytics abbia il ruolo Collaboratore Log Analytics dell'area di lavoro Log Analytics. Quando si seleziona Controllo di accesso (IAM) per la sottoscrizione nel portale di Azure e quindi selezionare Assegnazioni di ruolo nelle selezioni principali nel pannello, l'utente corrente deve visualizzare una voce: Collaboratore Log Analytics per l'utente che configura Log Analytics:

    Screenshot of the Access control pane with role highlighted.

Dopo aver completato questi passaggi, la parte di configurazione di Azure Log Analytics è stata completata. La sezione successiva illustra come continuare e completare la configurazione nel portale di Power BI Amministrazione.

Consentire la registrazione a livello di area di lavoro dal portale di Amministrazione

Un amministratore di Power BI deve completare il passaggio seguente per abilitare Azure Log Analytics per le aree di lavoro di Power BI Premium. Questa impostazione consente agli amministratori dell'area di lavoro di Power BI Premium di inviare i log dell'area di lavoro ad Azure Log Analytics quando sono stati soddisfatti i prerequisiti.

  1. Nel portale di Power BI Amministrazione passare a Tenant Impostazioni > Impostazioni di controllo e utilizzo ed espandere Connessioni di Azure Log Analytics per gli amministratori dell'area di lavoro. Per consentire agli amministratori dell'area di lavoro di abilitare Log Analytics, impostare il dispositivo di scorrimento su Abilitato e specificare i gruppi di sicurezza necessari in Applica a, come illustrato nell'immagine seguente.

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

Configurare la registrazione in un'area di lavoro Premium

  1. Nell'area di lavoro Premium gli amministratori dell'area di lavoro possono abilitare Log Analytics. A tale scopo, passare a Impostazioni come illustrato nell'immagine seguente.

    Screenshot of the settings pane in a Premium workspace.

  2. Nel riquadro Impostazioni selezionare Connessioni di Azure, quindi espandere Log Analytics come illustrato nell'immagine seguente.

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

  3. Selezionare la sottoscrizione di Azure, il gruppo di risorse e quindi l'area di lavoro Log Analytics configurata nella sezione precedente. Scegli quindi Salva. Al termine, la sezione Log Analytics a livello di tenant espansa dovrebbe essere simile all'immagine seguente.

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

Disconnettere Azure Log Analytics

È possibile disconnettersi da Azure Log Analytics per interrompere l'invio dei log ad Azure. Per disconnettersi, nell'area di lavoro di Power BI Impostazioni passare alle impostazioni di Log Analytics. Selezionare Disconnetti da Azure. Scegliere quindi Salva per disconnettersi.

Screenshot of the disconnect warning on the settings pane.

Nota

Quando si disconnette un'area di lavoro di Power BI da Azure Log Analytics, i log non vengono eliminati. I dati rimangono e seguono i criteri di archiviazione e conservazione impostati.

Scenari di utilizzo

Esistono molti modi in cui Azure Log Analytics e Power BI possono aiutare a risolvere le sfide reali per l'organizzazione. Tenere presente quanto segue:

  • Identificare i periodi di attività del motore di Analysis Services elevati o insoliti in base alla capacità, all'area di lavoro, al report o all'utente.
  • Analizzare le prestazioni e le tendenze delle query, incluse le operazioni DirectQuery esterne.
  • Analizzare la durata dell'aggiornamento del modello semantico, le sovrapposizioni e i passaggi di elaborazione.
  • Analizzare le operazioni personalizzate inviate usando l'endpoint XMLA Premium.

Inviare commenti e suggerimenti nel Community di Power BI per informazioni su come si usa la registrazione e su come ha aiutato l'organizzazione.

Condizioni e risoluzioni degli errori

La tabella seguente fornisce una raccolta di errori comuni, gli eventi o le configurazioni che li hanno attivati e le risoluzioni suggerite.

Condizione trigger Type Messaggio
Non si dispone dell'autorizzazione per la scrittura nell'area di lavoro Log Analytics Errore: non è possibile procedere Sono necessarie autorizzazioni di scrittura per questa area di lavoro Log Analytics per connetterla a Power BI. Contattare la persona dell'organizzazione che gestisce le sottoscrizioni di Azure per risolvere il problema.
Non si dispone dell'autorizzazione per scrivere nell'account dell'area di lavoro Log Analytics Errore: non è possibile procedere Sono necessarie autorizzazioni di scrittura per questa area di lavoro Log Analytics per connetterla a Power BI.
Non si ha accesso ad alcuna sottoscrizione di Azure Errore: non è possibile procedere Non si ha accesso ad alcuna sottoscrizione di Azure. Chiedere alla persona che gestisce le sottoscrizioni di Azure nell'organizzazione di concedere l'accesso collaboratore o superiore.
Non si ha accesso ad alcuna area di lavoro di Azure Log Analytics all'interno di tale sottoscrizione Errore: non è possibile procedere Non si ha accesso a un'area di lavoro Log Analytics di Azure. Chiedere alla persona che gestisce le sottoscrizioni di Azure nell'organizzazione di aggiungere l'utente al ruolo di proprietario o collaboratore di Log Analytics.
Log Analytics a livello di area di lavoro disabilitato durante il tentativo di connessione Informazioni Chiedere all'amministratore del tenant di concedere agli amministratori dell'area di lavoro l'autorizzazione per connettere le aree di lavoro Log Analytics.
Log Analytics a livello di area di lavoro disabilitato quando si tenta di disconnettersi Informazioni L'amministratore tenant ha revocato l'autorizzazione per consentire agli amministratori dell'area di lavoro di connettere le proprie aree di lavoro di Azure Log Analytics. Se si disconnette, non è possibile connettersi a un altro.

Eventi e schema

Dopo aver abilitato Azure Log Analytics, inizia a registrare le categorie di eventi seguenti. Per altre informazioni su questi eventi, vedere Eventi di traccia di Analysis Services.

  • AggregateTableRewriteQuery
  • Comando
  • Deadlock
  • DirectQuery
  • Discover
  • Error
  • ProgressReport
  • Query
  • Inizializzazione sessione
  • VertiPaq edizione Standard Query
  • Notifica

Nella tabella seguente viene descritto lo schema .

Proprietà Proprietà di Azure Analysis Services esistente Descrizione
TimeGenerated Il timestamp (UTC) relativo alla data e all'ora in cui è stato generato il log.
OperationName EventClass_s Operazione associata al record di log.
CorrelationId L'ID degli eventi correlati. Può essere usato per identificare eventi correlati tra più tabelle.
PowerBIWorkspaceId Identificatore univoco dell'area di lavoro contenente l'artefatto su cui si sta operando.
PremiumCapacityId Identificatore univoco della capacità Premium su cui è in esecuzione l'artefatto.
Applicationcontext ApplicationContext_s Contenitore delle proprietà di identificatori univoci che forniscono informazioni dettagliate sull'applicazione che esegue la richiesta. ad esempio, ID report.
ApplicationName ApplicationName_s Contiene il nome dell'applicazione client in cui è stata creata la connessione al server. Questa colonna viene popolata con i valori passati dall'applicazione e non con il nome visualizzato del programma.
ArtifactId Identificatore univoco della risorsa che registra i dati.
ArtifactKind Tipo di artefatto che registra l'operazione, ad esempio il modello semantico.
CpuTimeMs CPUTime_s Tempo della CPU in millisecondi utilizzato dall'evento.
ArtifactName DatabaseName_s Nome dell'artefatto di Power BI che registra questa operazione.
LogAnalyticsCategory Unica Categoria degli eventi, ad esempio Audit/Security/Request.
DatasetMode Modalità del modello semantico. Importare, DirectQuery o Composito.
DurationMs Duration_s Quantità di tempo (in millisecondi) impiegato dall'operazione.
Utente User_s Utente associato all'operazione in esecuzione. Usato quando un'identità dell'utente finale deve essere rappresentata nel server.
Esecuzioneutente EffectiveUsername_s L'utente che esegue l'operazione.
OperationDetailName EventSubclass_s Altre informazioni sull'operazione.
XmlaObjectPath ObjectPath_s Percorso dell'oggetto. Elenco delimitato da virgole di elementi padre, a partire dall'elemento padre dell'oggetto.
PowerBIWorkspaceName Nome dell'area di lavoro di Power BI contenente l'artefatto.
StatusCode Error_s Codice di stato dell'operazione. Copre l'esito positivo e negativo.
ProgressCounter ProgressTotal_s Contatore di stato.
XmlaProperties RequestProperties_s Proprietà della richiesta XMLA.
XmlaSessionId SPID_s Identificatore di sessione di Analysis Services.
Livello Severity_s Contiene il livello di gravità dell'operazione da registrare. Operazione riuscita, informativo, avviso o errore.
Identità Informazioni sull'utente e sulle attestazioni.
Stato Stato dell'operazione.
EventText TextData_s Contiene informazioni dettagliate associate all'operazione, ad esempio query DAX.
CustomerTenantId Identificatore del tenant di Power BI del cliente.
XmlaRequestId RootActivityId_g Identificatore univoco della richiesta.
Replicaid Identificatore di replica che consentirà di identificare la replica quando query scale out (QSO) è abilitato. La replica in lettura/scrittura ha sempre ReplicaId='AAA' e le repliche di sola lettura hanno ReplicaId a partire da 'AAB' e versioni successive. Per i modelli semantici non abilitati per QSO, ReplicaId è sempre "AAA"

Query KQL di Log Analytics di esempio

La raccolta di query di esempio seguente può essere utile quando si usa Azure Log Analytics con Power BI. Possono essere eseguiti direttamente nella portale di Azure o tramite API per eseguire query sui dati più recenti, in genere circa 5-10 minuti prima.

// 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

Modello di report di Power BI di esempio

Esplorare e ottenere informazioni dettagliate sui dati di Power BI di Azure Log Analytics usando un modello di report di Power BI open source in GitHub.

Gli articoli seguenti consentono di ottenere altre informazioni su Power BI e sulla relativa integrazione con Azure Log Analytics.