Dela via


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

Viktigt

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 Azure Resource Manager Azure Virtual Desktop-objekt kan du läsa 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 inblandad i aktiviteten, eventuella felmeddelanden som visas under sessionen, klientinformation och användarinformation. Diagnostikfunktionen skapar aktivitetsloggar för både användaråtgärder 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 Fjärrskrivbord program.
  • Anslutningsaktiviteter: när en användare försöker ansluta till ett skrivbord eller RemoteApp via Microsoft Fjärrskrivbord 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.

Varför du bör 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 med en enda användare. När 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 börjar

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 Ansluta Windows-datorer till Azure Monitor för att hämta följande information:

  • Arbetsytans ID
  • Arbetsytans primärnyckel

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

Skicka diagnostikdata till din arbetsyta

Du kan skicka diagnostikdata från din Azure Virtual Desktop-klientorganisation till Log Analytics för 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 i stället för en ny klientorganisation kör du den här cmdleten i stället:

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.

Anteckning

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

Nästa exempelfråga visar hanteringsaktiviteter för administratörer på 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 finns i Identifiera och diagnostisera problem.