Condividi tramite


Usare Log Analytics per la funzionalità di diagnostica in Desktop virtuale Azure (versione classica)

Importante

Questo contenuto si applica ad Azure Virtual Desktop (classico), che non supporta gli oggetti di Azure Virtual Desktop di Azure Resource Manager. Se stai cercando di gestire gli oggetti di Azure Virtual Desktop di Azure Resource Manager, consulta questo articolo.

Desktop virtuale Azure offre una funzionalità di diagnostica che consente all'amministratore di identificare i problemi tramite una singola interfaccia. Questa funzionalità registra le informazioni di diagnostica ogni volta che un utente assegnato al ruolo Desktop virtuale Azure usa il servizio. Ogni log contiene informazioni sul ruolo desktop virtuale Azure coinvolto nell'attività, tutti i messaggi di errore visualizzati durante la sessione, le informazioni sul tenant e le informazioni sull'utente. La funzionalità di diagnostica crea i log attività sia per le azioni utente che per le azioni amministrative. Ogni log attività rientra in tre categorie principali:

  • Attività di sottoscrizione feed: quando un utente tenta di connettersi al feed tramite app Microsoft Remote Desktop.
  • Attività di connessione: quando un utente tenta di connettersi a un desktop o a RemoteApp tramite applicazioni Desktop remoto Microsoft.
  • Attività di gestione: quando un amministratore esegue operazioni di gestione nel sistema, ad esempio la creazione di pool di host, l'assegnazione di utenti ai gruppi di applicazioni e la creazione di assegnazioni di ruolo.

Le connessioni che non raggiungono Azure Virtual Desktop non verranno visualizzate nei risultati della diagnostica perché il servizio di ruolo diagnostico è parte di Azure Virtual Desktop. I problemi di connessione di Desktop virtuale Azure possono verificarsi quando l'utente riscontra problemi di connettività di rete.

Perché è consigliabile usare Log Analytics

È consigliabile usare Log Analytics per analizzare i dati di diagnostica nel client di Azure che vanno oltre la risoluzione dei problemi dei singoli utenti. Poiché è possibile importare i contatori delle prestazioni delle VM in Log Analytics, hai uno strumento per raccogliere informazioni per la distribuzione.

Prima di iniziare

Prima di poter usare Log Analytics con la funzionalità di diagnostica, è necessario creare un'area di lavoro.

Dopo la creazione dell'area di lavoro, segui le istruzioni riportate in Connettere i computer Windows a Monitor di Azure per ottenere le seguenti informazioni:

  • ID dell'area di lavoro
  • Chiave primaria dell'area di lavoro

Queste informazioni saranno necessarie più avanti nel processo di installazione.

Inviare i dati di diagnostica all'area di lavoro

È possibile trasferire i dati di diagnostica dal tenant di Azure Virtual Desktop nel Log Analytics per l'area di lavoro. È possibile configurare subito questa funzionalità quando si crea il tenant collegando l'area di lavoro al tenant oppure è possibile configurarla in un secondo momento con un tenant esistente.

Per collegare il tenant alla tua area di lavoro Log Analytics durante la configurazione del nuovo tenant, eseguire il cmdlet seguente per accedere ad Azure Virtual Desktop con l'account utente TenantCreator:

Add-RdsAccount -DeploymentUrl https://rdbroker.wvd.microsoft.com

Se si intende collegare un tenant esistente anziché un nuovo tenant, eseguire invece questo cmdlet:

Set-RdsTenant -Name <TenantName> -AzureSubscriptionId <SubscriptionID> -LogAnalyticsWorkspaceId <String> -LogAnalyticsPrimaryKey <String>

È necessario eseguire questi cmdlet per ogni tenant da collegare a Log Analytics.

Nota

Se non si vuole collegare l'area di lavoro Log Analytics quando si crea un tenant, eseguire invece il cmdlet New-RdsTenant.

Frequenza per l'invio di eventi diagnostici

Gli eventi di diagnostica vengono inviati a Log Analytics al termine.

Esempi di query

Le query di esempio seguenti illustrano come la funzionalità di diagnostica genera un report per le attività più frequenti nel sistema:

Questo primo esempio mostra le attività di connessione avviate dagli utenti con client Desktop remoto supportati:

WVDActivityV1_CL
| where Type_s == "Connection"
| join kind=leftouter (
    WVDErrorV1_CL
    | summarize Errors = makelist(pack('Time', Time_t, 'Code', ErrorCode_s , 'CodeSymbolic', ErrorCodeSymbolic_s, 'Message', ErrorMessage_s, 'ReportedBy', ReportedBy_s , 'Internal', ErrorInternal_s )) by ActivityId_g
    ) on $left.Id_g  == $right.ActivityId_g 
| join  kind=leftouter (
    WVDCheckpointV1_CL
    | summarize Checkpoints = makelist(pack('Time', Time_t, 'ReportedBy', ReportedBy_s, 'Name', Name_s, 'Parameters', Parameters_s) ) by ActivityId_g
    ) on $left.Id_g  == $right.ActivityId_g
|project-away ActivityId_g, ActivityId_g1

Questa prossima query di esempio mostra le attività di gestione da parte degli amministratori sugli inquilini:

WVDActivityV1_CL
| where Type_s == "Management"
| join kind=leftouter (
    WVDErrorV1_CL
    | summarize Errors = makelist(pack('Time', Time_t, 'Code', ErrorCode_s , 'CodeSymbolic', ErrorCodeSymbolic_s, 'Message', ErrorMessage_s, 'ReportedBy', ReportedBy_s , 'Internal', ErrorInternal_s )) by ActivityId_g
    ) on $left.Id_g  == $right.ActivityId_g 
| join  kind=leftouter (
    WVDCheckpointV1_CL
    | summarize Checkpoints = makelist(pack('Time', Time_t, 'ReportedBy', ReportedBy_s, 'Name', Name_s, 'Parameters', Parameters_s) ) by ActivityId_g
    ) on $left.Id_g  == $right.ActivityId_g
|project-away ActivityId_g, ActivityId_g1

Interrompere l'invio di dati a Log Analytics

Per interrompere l'invio di dati da un tenant esistente a Log Analytics, eseguire il cmdlet seguente e impostare stringhe vuote:

Set-RdsTenant -Name <TenantName> -AzureSubscriptionId <SubscriptionID> -LogAnalyticsWorkspaceId <String> -LogAnalyticsPrimaryKey <String>

È necessario eseguire questo cmdlet per ogni tenant da cui si vogliono interrompere l'invio di dati.

Passaggi successivi

Per esaminare gli scenari di errore comuni che la funzionalità di diagnostica può identificare, vedere Identificare e diagnosticare i problemi.