Instalowanie i konfigurowanie rozszerzenia Diagnostyka Azure dla systemu Windows (WAD)

Rozszerzenie Diagnostyka Azure to agent w usłudze Azure Monitor, który zbiera dane monitorowania z systemu operacyjnego gościa i obciążeń maszyn wirtualnych platformy Azure i innych zasobów obliczeniowych. Ten artykuł zawiera informacje na temat sposobu instalowania i konfigurowania rozszerzenia Diagnostyka Azure dla systemu Windows oraz opis sposobu przechowywania danych na koncie usługi Azure Storage.

Rozszerzenie diagnostyczne jest implementowane jako rozszerzenie maszyny wirtualnej na platformie Azure. Obsługuje te same opcje instalacji przy użyciu szablonów usługi Azure Resource Manager, programu PowerShell i interfejsu wiersza polecenia platformy Azure. Aby uzyskać informacje na temat sposobu instalowania i obsługi rozszerzeń maszyn wirtualnych, zobacz Rozszerzenia i funkcje maszyny wirtualnej dla systemu Windows.

Omówienie

Podczas konfigurowania rozszerzenia Diagnostyka Azure dla systemu Windows należy określić konto magazynu, na którym będą wysyłane wszystkie określone dane. Opcjonalnie możesz dodać co najmniej jeden ujścia danych, aby wysłać dane do różnych lokalizacji:

  • Ujście usługi Azure Monitor: wysyłanie danych wydajności gościa do metryk usługi Azure Monitor.
  • Ujście usługi Azure Event Hub: wysyłanie danych dotyczących wydajności gościa i dzienników do centrów zdarzeń w celu przekazywania danych poza platformą Azure. Nie można skonfigurować tego ujścia w witrynie Azure Portal.

Instalowanie przy użyciu witryny Azure Portal

Rozszerzenie diagnostyczne można zainstalować i skonfigurować na pojedynczej maszynie wirtualnej w witrynie Azure Portal. Będziesz pracować z interfejsem, a nie bezpośrednio z konfiguracją. Po włączeniu rozszerzenia diagnostycznego będzie ona automatycznie używać domyślnej konfiguracji z najczęstszymi licznikami i zdarzeniami wydajności. Tę konfigurację domyślną można zmodyfikować zgodnie z określonymi wymaganiami.

Uwaga

W poniższych krokach opisano najbardziej typowe ustawienia rozszerzenia diagnostyki. Aby uzyskać więcej informacji na temat wszystkich opcji konfiguracji, zobacz Schemat rozszerzenia diagnostyki systemu Windows.

  1. Otwórz menu maszyny wirtualnej w witrynie Azure Portal.

  2. Wybierz pozycję Ustawienia diagnostyczne w sekcji Monitorowanie menu maszyny wirtualnej.

  3. Wybierz pozycję Włącz monitorowanie na poziomie gościa, jeśli rozszerzenie diagnostyki nie zostało jeszcze włączone.

    Screenshot that shows enabling monitoring.

  4. Dla maszyny wirtualnej zostanie utworzone nowe konto usługi Azure Storage. Nazwa będzie oparta na nazwie grupy zasobów dla maszyny wirtualnej. Zostanie wybrany domyślny zestaw liczników wydajności gościa i dzienników.

    Screenshot that shows Diagnostic settings.

  5. Na karcie Liczniki wydajności wybierz metryki gościa, które chcesz zebrać z tej maszyny wirtualnej. Użyj ustawienia Niestandardowe, aby uzyskać bardziej zaawansowany wybór.

    Screenshot that shows Performance counters.

  6. Na karcie Dzienniki wybierz dzienniki do zebrania z maszyny wirtualnej. Dzienniki można wysyłać do magazynu lub centrów zdarzeń, ale nie do usługi Azure Monitor. Użyj agenta usługi Log Analytics, aby zebrać dzienniki gościa w usłudze Azure Monitor.

    Screenshot that shows the Logs tab with different logs selected for a virtual machine.

  7. Na karcie Zrzuty awaryjne określ wszystkie procesy zbierania zrzutów pamięci po awarii. Dane zostaną zapisane na koncie magazynu dla ustawienia diagnostycznego. Opcjonalnie można określić kontener obiektów blob.

    Screenshot that shows the Crash dumps tab.

  8. Na karcie Ujścia określ, czy dane mają być wysyłane do lokalizacji innych niż usługa Azure Storage. W przypadku wybrania usługi Azure Monitor dane wydajności gościa zostaną wysłane do metryk usługi Azure Monitor. Nie można skonfigurować ujścia centrów zdarzeń przy użyciu witryny Azure Portal.

    Screenshot that shows the Sinks tab with the Send diagnostic data to Azure Monitor option enabled.

    Jeśli nie włączono tożsamości przypisanej przez system skonfigurowanej dla maszyny wirtualnej, podczas zapisywania konfiguracji przy użyciu ujścia usługi Azure Monitor może zostać wyświetlone następujące ostrzeżenie. Wybierz baner, aby włączyć tożsamość przypisaną przez system.

    Screenshot that shows the managed identity warning.

  9. Na karcie Agent możesz zmienić konto magazynu, ustawić limit przydziału dysku i określić, czy zbierać dzienniki infrastruktury diagnostycznej.

    Screenshot that shows the Agent tab with the option to set the storage account.

  10. Wybierz Zapisz, aby zapisać konfigurację.

Uwaga

Konfigurację rozszerzenia diagnostycznego można sformatować w formacie JSON lub XML, ale każda konfiguracja wykonywana w witrynie Azure Portal będzie zawsze przechowywana w formacie JSON. Jeśli używasz kodu XML z inną metodą konfiguracji, a następnie zmienisz konfigurację w witrynie Azure Portal, ustawienia zostaną zmienione na JSON. Ponadto nie ma możliwości skonfigurowania okresu przechowywania tych dzienników.

Szablon usługi Resource Manager

Aby uzyskać informacje na temat wdrażania rozszerzenia diagnostycznego przy użyciu szablonów usługi Azure Resource Manager, zobacz Używanie monitorowania i diagnostyki z maszyną wirtualną z systemem Windows i szablonami usługi Azure Resource Manager.

Wdrożenie za pomocą interfejsu wiersza polecenia platformy Azure

Interfejs wiersza polecenia platformy Azure może służyć do wdrażania rozszerzenia Diagnostyka Azure na istniejącej maszynie wirtualnej przy użyciu polecenia az vm extension set, jak w poniższym przykładzie:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name IaaSDiagnostics \
  --publisher Microsoft.Azure.Diagnostics \
  --protected-settings protected-settings.json \
  --settings public-settings.json 

Ustawienia chronione są zdefiniowane w elemecie PrivateConfig schematu konfiguracji. Poniższy minimalny przykład pliku ustawień chronionych definiuje konto magazynu. Aby uzyskać szczegółowe informacje na temat ustawień prywatnych, zobacz Przykładowa konfiguracja.

{
    "storageAccountName": "mystorageaccount",
    "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "storageAccountEndPoint": "https://core.windows.net"
}

Ustawienia publiczne są definiowane w elemecie Public schematu konfiguracji. Poniższy minimalny przykład pliku ustawień publicznych umożliwia zbieranie dzienników infrastruktury diagnostycznej, pojedynczego licznika wydajności i jednego dziennika zdarzeń. Aby uzyskać szczegółowe informacje na temat ustawień publicznych, zobacz Przykładowa konfiguracja.

{
  "StorageAccount": "mystorageaccount",
  "WadCfg": {
    "DiagnosticMonitorConfiguration": {
      "overallQuotaInMB": 5120,
      "PerformanceCounters": {
        "scheduledTransferPeriod": "PT1M",
        "PerformanceCounterConfiguration": [
          {
            "counterSpecifier": "\\Processor Information(_Total)\\% Processor Time",
            "unit": "Percent",
            "sampleRate": "PT60S"
          }
        ]
      },
      "WindowsEventLog": {
        "scheduledTransferPeriod": "PT1M",
        "DataSource": [
          {
            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
          }
        ]
      }
    }
  }
}

Wdrażanie przy użyciu programu PowerShell

Za pomocą programu PowerShell można wdrożyć rozszerzenie Diagnostyka Azure na istniejącej maszynie wirtualnej przy użyciu polecenia Set-AzVMDiagnosticsExtension, jak w poniższym przykładzie:

Set-AzVMDiagnosticsExtension -ResourceGroupName "myvmresourcegroup" `
  -VMName "myvm" `
  -DiagnosticsConfigurationPath "DiagnosticsConfiguration.json"

Ustawienia prywatne są definiowane w elemecie PrivateConfig. Ustawienia publiczne są definiowane w elemecie Public schematu konfiguracji. Możesz również określić szczegóły konta magazynu jako parametry Set-AzVMDiagnosticsExtension polecenia cmdlet, a nie uwzględnić ich w ustawieniach prywatnych.

Poniższy minimalny przykład pliku konfiguracji umożliwia zbieranie dzienników infrastruktury diagnostycznej, pojedynczego licznika wydajności i jednego dziennika zdarzeń. Aby uzyskać szczegółowe informacje na temat ustawień prywatnych i publicznych, zobacz Przykładowa konfiguracja.

{
    "PublicConfig": {
        "WadCfg": {
            "DiagnosticMonitorConfiguration": {
                "overallQuotaInMB": 10000,
                "DiagnosticInfrastructureLogs": {
                    "scheduledTransferLogLevelFilter": "Error"
                },
                "PerformanceCounters": {
                    "scheduledTransferPeriod": "PT1M",
                    "PerformanceCounterConfiguration": [
                        {
                            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                            "sampleRate": "PT3M",
                            "unit": "percent"
                        }
                    ]
                },
                "WindowsEventLog": {
                    "scheduledTransferPeriod": "PT1M",
                        "DataSource": [
                        {
                            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
                        }
                    ]
                }
            }
        },
        "StorageAccount": "mystorageaccount",
        "StorageType": "TableAndBlob"
    },
    "PrivateConfig": {
        "storageAccountName": "mystorageaccount",
        "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "storageAccountEndPoint": "https://core.windows.net"
    }
}

Zobacz również Używanie programu PowerShell do włączania Diagnostyka Azure na maszynie wirtualnej z systemem Windows.

Magazyn danych

W poniższej tabeli wymieniono różne typy danych zebranych z rozszerzenia diagnostycznego oraz informacje o tym, czy są przechowywane jako tabela, czy obiekt blob. Dane przechowywane w tabelach mogą być również przechowywane w obiektach blob w zależności od ustawienia StorageType w konfiguracji publicznej.

Dane Typ magazynu opis
WADDiagnosticInfrastructureLogsTable Table Zmiany w monitorze diagnostycznym i konfiguracji.
WADDirectoriesTable Table Katalogi monitora diagnostycznego są monitorowane. Ta grupa obejmuje dzienniki usług IIS, dzienniki żądań niepowodzenia usług IIS i katalogi niestandardowe. Lokalizacja pliku dziennika obiektów blob jest określona w polu Kontener, a nazwa obiektu blob znajduje się w polu RelativePath. Pole AbsolutePath wskazuje lokalizację i nazwę pliku, tak jak istniał na maszynie wirtualnej platformy Azure.
WadLogsTable Table Dzienniki zapisywane w kodzie przy użyciu odbiornika śledzenia.
WADPerformanceCountersTable Table Liczniki wydajności.
WADWindowsEventLogsTable Table Dzienniki zdarzeń systemu Windows.
wad-iis-failedreqlogfiles Obiekt blob Zawiera informacje z dzienników żądań niepowodzenia usług IIS.
wad-iis-logfiles Obiekt blob Zawiera informacje o dziennikach usług IIS.
"niestandardowy" Obiekt blob Kontener niestandardowy oparty na konfigurowaniu katalogów monitorowanych przez monitor diagnostyczny. Nazwa tego kontenera obiektów blob zostanie określona w tabeli WADDirectoriesTable.

Narzędzia do wyświetlania danych diagnostycznych

Dostępnych jest kilka narzędzi do wyświetlania danych po przeniesieniu ich do magazynu. Przykład:

  • Eksplorator serwera w programie Visual Studio: jeśli zainstalowano narzędzia platformy Azure dla programu Microsoft Visual Studio, możesz użyć węzła Usługi Azure Storage w Eksploratorze serwera, aby wyświetlić dane obiektu blob i tabeli tylko do odczytu z kont usługi Azure Storage. Możesz wyświetlać dane z lokalnego konta emulatora magazynu i z kont magazynu utworzonych dla platformy Azure. Aby uzyskać więcej informacji, zobacz Przeglądanie zasobów magazynu i zarządzanie nimi za pomocą Eksploratora serwera.
  • Eksplorator usługi Microsoft Azure Storage: ta autonomiczna aplikacja umożliwia łatwą pracę z danymi usługi Azure Storage w systemach Windows, OSX i Linux.
  • Azure Management Studio: to narzędzie zawiera Diagnostyka Azure Manager. Służy do wyświetlania, pobierania i zarządzania danymi diagnostycznymi zebranymi przez aplikacje działające na platformie Azure.

Następne kroki

Aby uzyskać informacje na temat przekazywania danych monitorowania do usługi Azure Event Hubs, zobacz Wysyłanie danych z rozszerzenia Diagnostyka Azure do usługi Event Hubs.