Dela via


Använda Log Analytics för diagnostikfunktionen i Azure Virtual Desktop (klassisk)

Viktig

Det här innehållet gäller för Azure Virtual Desktop (klassiskt), som inte stöder Azure Resource Manager Azure Virtual Desktop-objekt. Om du försöker hantera objekt för Azure Virtual Desktop i Azure Resource Manager, se den här artikeln.

Azure Virtual Desktop erbjuder en diagnostikfunktion som gör att administratören kan identifiera problem via ett enda gränssnitt. Den här funktionen loggar diagnostikinformation när någon som tilldelats Azure Virtual Desktop-rollen använder tjänsten. Varje logg innehåller information om vilken Azure Virtual Desktop-roll som var involverad i aktiviteten, eventuella felmeddelanden som visas under sessionen, klientinformation och användarinformation. Diagnostikfunktionen skapar aktivitetsloggar för både användar- och administrativa åtgärder. Varje aktivitetslogg faller under tre huvudkategorier:

  • Feed-prenumerationsaktiviteter: när en användare försöker ansluta till sitt flöde via Microsoft Remote Desktop-program.
  • Anslutningsaktiviteter: när en användare försöker ansluta till ett skrivbord eller RemoteApp via Microsoft Remote Desktop-program.
  • Hanteringsaktiviteter: när en administratör utför hanteringsåtgärder i systemet, till exempel skapa värdpooler, tilldela användare till programgrupper och skapa rolltilldelningar.

Anslutningar som inte når Azure Virtual Desktop visas inte i diagnostikresultat eftersom själva diagnostikrolltjänsten är en del av Azure Virtual Desktop. Anslutningsproblem med Azure Virtual Desktop kan inträffa när användaren har problem med nätverksanslutningen.

Därför bör du använda Log Analytics

Vi rekommenderar att du använder Log Analytics för att analysera diagnostikdata i Azure-klienten som går utöver felsökning av en enda användare. Eftersom du kan hämta prestandaräknare för virtuella datorer till Log Analytics har du ett verktyg för att samla in information för distributionen.

Innan du kommer igång

Innan du kan använda Log Analytics med diagnostikfunktionen måste du skapa en arbetsyta.

När du har skapat din arbetsyta följer du anvisningarna i Anslut Windows-datorer till Azure Monitor för att få följande information:

  • Arbetsyta-ID
  • Den primära nyckeln för din arbetsyta

Du behöver den här informationen senare i installationsprocessen.

Skicka diagnostikdata till din arbetsyta

Du kan skicka diagnostiska data från din Azure Virtual Desktop-miljö till Log Analytics i din arbetsyta. Du kan konfigurera den här funktionen direkt när du först skapar din klient genom att länka din arbetsyta till din klientorganisation, eller så kan du konfigurera den senare med en befintlig klientorganisation.

Om du vill länka din klientorganisation till Log Analytics-arbetsytan när du konfigurerar din nya klientorganisation kör du följande cmdlet för att logga in på Azure Virtual Desktop med ditt klientskaparanvändarkonto:

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

Om du ska länka en befintlig klientorganisation istället för en ny klientorganisation, kör detta cmdlet-kommando:

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

Du måste köra dessa cmdletar för varje klientorganisation som du vill länka till Log Analytics.

Not

Om du inte vill länka Log Analytics-arbetsytan när du skapar en klientorganisation kör du cmdleten New-RdsTenant i stället.

Kadens för att skicka diagnostikhändelser

Diagnostikhändelser skickas till Log Analytics när de har slutförts.

Exempelfrågor

Följande exempelfrågor visar hur diagnostikfunktionen genererar en rapport för de vanligaste aktiviteterna i systemet:

Det här första exemplet visar anslutningsaktiviteter som initierats av användare med fjärrskrivbordsklienter som stöds:

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

I nästa exempelfråga visas hanteringsaktiviteter för administratörer i klientorganisationer:

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

Sluta skicka data till Log Analytics

Om du vill sluta skicka data från en befintlig klientorganisation till Log Analytics kör du följande cmdlet och anger tomma strängar:

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

Du måste köra den här cmdleten för varje klientorganisation som du vill sluta skicka data från.

Nästa steg

Information om vanliga felscenarier som diagnostikfunktionen kan identifiera åt dig finns i Identifiera och diagnostisera problem.