Korzystanie z usługi Log Analytics na potrzeby funkcji diagnostyki w usłudze Azure Virtual Desktop (wersja klasyczna)
Ważne
Ta zawartość dotyczy usługi Azure Virtual Desktop (klasycznej), która nie obsługuje obiektów usługi Azure Resource Manager usługi Azure Virtual Desktop. Jeśli próbujesz zarządzać obiektami usługi Azure Resource Manager usługi Azure Virtual Desktop, zobacz ten artykuł.
Usługa Azure Virtual Desktop oferuje funkcję diagnostyki, która umożliwia administratorowi identyfikowanie problemów za pomocą jednego interfejsu. Ta funkcja rejestruje informacje diagnostyczne za każdym razem, gdy ktoś ma przypisaną rolę usługi Azure Virtual Desktop. Każdy dziennik zawiera informacje o tym, która rola usługi Azure Virtual Desktop była zaangażowana w działanie, wszelkie komunikaty o błędach wyświetlane podczas sesji, informacje o dzierżawie i informacje o użytkowniku. Funkcja diagnostyki tworzy dzienniki aktywności zarówno dla akcji użytkownika, jak i akcji administracyjnych. Każdy dziennik aktywności należy do trzech głównych kategorii:
- Działania subskrypcji kanału informacyjnego: gdy użytkownik próbuje nawiązać połączenie z kanałem informacyjnym za pośrednictwem aplikacji Pulpit zdalny Microsoft.
- Działania połączenia: gdy użytkownik próbuje nawiązać połączenie z pulpitem lub usługą RemoteApp za pośrednictwem aplikacji Pulpit zdalny Microsoft.
- Działania związane z zarządzaniem: gdy administrator wykonuje operacje zarządzania w systemie, takie jak tworzenie pul hostów, przypisywanie użytkowników do grup aplikacji i tworzenie przypisań ról.
Połączenia, które nie docierają do usługi Azure Virtual Desktop, nie będą wyświetlane w wynikach diagnostyki, ponieważ sama usługa roli diagnostyki jest częścią usługi Azure Virtual Desktop. Problemy z połączeniem usługi Azure Virtual Desktop mogą wystąpić, gdy użytkownik ma problemy z łącznością sieciową.
Dlaczego należy używać usługi Log Analytics
Zalecamy użycie usługi Log Analytics do analizowania danych diagnostycznych w kliencie platformy Azure, który wykracza poza rozwiązywanie problemów z jednym użytkownikiem. Ponieważ możesz ściągnąć liczniki wydajności maszyny wirtualnej do usługi Log Analytics, masz jedno narzędzie do zbierania informacji dotyczących wdrożenia.
Przed rozpoczęciem
Aby móc korzystać z usługi Log Analytics z funkcją diagnostyki, musisz utworzyć obszar roboczy.
Po utworzeniu obszaru roboczego postępuj zgodnie z instrukcjami w temacie Łączenie komputerów z systemem Windows z usługą Azure Monitor , aby uzyskać następujące informacje:
- Identyfikator obszaru roboczego
- Klucz podstawowy obszaru roboczego
Te informacje będą potrzebne w dalszej części procesu instalacji.
Wypychanie danych diagnostycznych do obszaru roboczego
Możesz wypchnąć dane diagnostyczne z dzierżawy usługi Azure Virtual Desktop do usługi Log Analytics dla obszaru roboczego. Tę funkcję można skonfigurować od razu po utworzeniu dzierżawy przez połączenie obszaru roboczego z dzierżawą lub skonfigurowanie jej później przy użyciu istniejącej dzierżawy.
Aby połączyć dzierżawę z obszarem roboczym usługi Log Analytics podczas konfigurowania nowej dzierżawy, uruchom następujące polecenie cmdlet, aby zalogować się do usługi Azure Virtual Desktop przy użyciu konta użytkownika TenantCreator:
Add-RdsAccount -DeploymentUrl https://rdbroker.wvd.microsoft.com
Jeśli zamierzasz połączyć istniejącą dzierżawę zamiast nowej dzierżawy, uruchom następujące polecenie cmdlet:
Set-RdsTenant -Name <TenantName> -AzureSubscriptionId <SubscriptionID> -LogAnalyticsWorkspaceId <String> -LogAnalyticsPrimaryKey <String>
Należy uruchomić te polecenia cmdlet dla każdej dzierżawy, którą chcesz połączyć z usługą Log Analytics.
Uwaga
Jeśli nie chcesz łączyć obszaru roboczego usługi Log Analytics podczas tworzenia dzierżawy, uruchom zamiast tego New-RdsTenant
polecenie cmdlet .
Cykl wysyłania zdarzeń diagnostycznych
Zdarzenia diagnostyczne są wysyłane do usługi Log Analytics po zakończeniu.
Przykładowe zapytania
Poniższe przykładowe zapytania pokazują, jak funkcja diagnostyki generuje raport dla najczęstszych działań w systemie:
W tym pierwszym przykładzie przedstawiono działania połączeń inicjowane przez użytkowników z obsługiwanymi klientami pulpitu zdalnego:
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
To następne przykładowe zapytanie przedstawia działania związane z zarządzaniem przez administratorów w dzierżawach:
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
Zatrzymywanie wysyłania danych do usługi Log Analytics
Aby zatrzymać wysyłanie danych z istniejącej dzierżawy do usługi Log Analytics, uruchom następujące polecenie cmdlet i ustaw puste ciągi:
Set-RdsTenant -Name <TenantName> -AzureSubscriptionId <SubscriptionID> -LogAnalyticsWorkspaceId <String> -LogAnalyticsPrimaryKey <String>
To polecenie cmdlet należy uruchomić dla każdej dzierżawy, z której chcesz przestać wysyłać dane.
Następne kroki
Aby przejrzeć typowe scenariusze błędów, które funkcja diagnostyki może zidentyfikować, zobacz Identyfikowanie i diagnozowanie problemów.