Udostępnij za pośrednictwem


Wersje schematu konfiguracji rozszerzenia windows Diagnostyka Azure (WAD) i historia

Ten artykuł zawiera historię wersji rozszerzenia Diagnostyka Azure dla wersji schematu systemu Windows (WAD) dostarczanych w ramach zestawu Microsoft Azure SDK.

Wykres wysyłkowy wersji zestawu Azure SDK i diagnostyki

Wersja zestawu Azure SDK Wersja rozszerzenia diagnostyki Model
1.x 1.0 wtyczka
2.0 - 2.4 1.0 wtyczka
2,5 1.2 rozszerzenie
2.6 1.3 "
2.7 1.4 "
2.8 1.5 "
2.9 1.6 "
2.96 1,7 "
2.96 1.8 "
2.96 1.8.1 "
2.96 1,9 "
2.96 1.11 "
2.96 1.21 "

Diagnostyka Azure wersji 1.0 została po raz pierwszy dostarczona w modelu wtyczek — co oznacza, że po zainstalowaniu zestawu Azure SDK otrzymasz wersję diagnostyki platformy Azure dostarczoną z nią.

Począwszy od zestawu SDK 2.5 (diagnostyka w wersji 1.2), diagnostyka platformy Azure przeszła do modelu rozszerzenia. Narzędzia do korzystania z nowych funkcji były dostępne tylko w nowszych zestawach AZURE SDK, ale każda usługa korzystająca z diagnostyki platformy Azure odebrałaby najnowszą wersję wysyłkową bezpośrednio z platformy Azure. Na przykład każda osoba nadal korzystająca z zestawu SDK 2.5 będzie ładować najnowszą wersję pokazaną w poprzedniej tabeli, niezależnie od tego, czy korzystają z nowszych funkcji.

Indeks schematów

Różne wersje diagnostyki platformy Azure używają różnych schematów konfiguracji. Schemat 1.0 i 1.2 zostały wycofane. Aby uzyskać więcej informacji na temat wersji 1.3 lub nowszej, zobacz Diagnostyka 1.3 i nowszy schemat konfiguracji

Historia wersji

Rozszerzenie diagnostyki 1.11

Dodano obsługę ujścia usługi Azure Monitor. Ten ujście ma zastosowanie tylko do liczników wydajności. Umożliwia wysyłanie liczników wydajności zebranych na maszynie wirtualnej, maszynie wirtualnej, zestawie skalowania maszyn wirtualnych lub w chmurze do usługi Azure Monitor jako metryk niestandardowych. Ujście usługi Azure Monitor obsługuje:

  • Pobieranie wszystkich liczników wydajności wysyłanych do usługi Azure Monitor za pośrednictwem interfejsów API metryk usługi Azure Monitor.
  • Alerty dotyczące wszystkich liczników wydajności wysyłanych do usługi Azure Monitor za pośrednictwem nowego ujednoliconego środowiska alertów w usłudze Azure Monitor
  • Traktowanie operatora symboli wieloznacznych w licznikach wydajności jako wymiaru "Wystąpienie" metryki. Jeśli na przykład zebrano licznik "Dysk logiczny(*)/DiskWrites/s", można filtrować i dzielić według wymiaru "Wystąpienie", aby wykreślić lub powiadomić o zapisach dysku/s dla każdego dysku logicznego (C:, D:, itp.)

Definiowanie usługi Azure Monitor jako nowego ujścia w konfiguracji rozszerzenia diagnostyki

"SinksConfig": {
    "Sink": [
        {
            "name": "AzureMonitorSink",
            "AzureMonitor": {}
        },
    ]
}
<SinksConfig>  
  <Sink name="AzureMonitorSink">
      <AzureMonitor/>
  </Sink>
</SinksConfig>

Uwaga

Skonfigurowanie ujścia usługi Azure Monitor dla klasycznych maszyn wirtualnych i klasycznej usługi CLoud wymaga zdefiniowania większej liczby parametrów w konfiguracji prywatnej rozszerzenia diagnostyki.

Aby uzyskać więcej informacji, zapoznaj się ze szczegółową dokumentacją schematu rozszerzenia diagnostyki.

Następnie można skonfigurować liczniki wydajności, które mają być kierowane do ujścia usługi Azure Monitor.

"PerformanceCounters": {
    "scheduledTransferPeriod": "PT1M",
    "sinks": "AzureMonitorSink",
    "PerformanceCounterConfiguration": [
        {
            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
            "sampleRate": "PT1M",
            "unit": "percent"
        }
    ]
},
<PerformanceCounters scheduledTransferPeriod="PT1M", sinks="AzureMonitorSink">  
  <PerformanceCounterConfiguration counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT1M" unit="percent" />  
</PerformanceCounters>

Rozszerzenie diagnostyki 1.9

Dodano obsługę platformy Docker.

Rozszerzenie diagnostyki 1.8.1

Może określić token SAS zamiast klucza konta magazynu w konfiguracji prywatnej. Jeśli zostanie podany token SAS, klucz konta magazynu zostanie zignorowany.

{
    "storageAccountName": "diagstorageaccount",
    "storageAccountEndPoint": "https://core.windows.net",
    "storageAccountSasToken": "{sas token}",
    "SecondaryStorageAccounts": {
        "StorageAccount": [
            {
                "name": "secondarydiagstorageaccount",
                "endpoint": "https://core.windows.net",
                "sasToken": "{sas token}"
            }
        ]
    }
}
<PrivateConfig>
    <StorageAccount name="diagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    <SecondaryStorageAccounts>
        <StorageAccount name="secondarydiagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    </SecondaryStorageAccounts>
</PrivateConfig>

Rozszerzenie diagnostyki 1.8

Dodano typ magazynu do właściwości PublicConfig. StorageType może być Table, Blob, TableAndBlob. Tabela jest wartością domyślną.

{
    "WadCfg": {
    },
    "StorageAccount": "diagstorageaccount",
    "StorageType": "TableAndBlob"
}
<PublicConfig>
    <WadCfg />
    <StorageAccount>diagstorageaccount</StorageAccount>
    <StorageType>TableAndBlob</StorageType>
</PublicConfig>

Rozszerzenie diagnostyki 1.7

Dodano możliwość kierowania do usługi EventHub.

Rozszerzenie diagnostyki 1.5

Dodano element ujścia i możliwość wysyłania danych diagnostycznych do usługi Application Insights , co ułatwia diagnozowanie problemów w aplikacji, a także na poziomie systemu i infrastruktury.

Zestaw Azure SDK 2.6 i rozszerzenie diagnostyki 1.3

W przypadku projektów usługi w chmurze w programie Visual Studio wprowadzono następujące zmiany. (Te zmiany dotyczą również nowszych wersji zestawu Azure SDK).

  • Emulator lokalny obsługuje teraz diagnostykę. Ta zmiana oznacza, że można zbierać dane diagnostyczne i upewnić się, że aplikacja tworzy odpowiednie ślady podczas opracowywania i testowania w programie Visual Studio. UseDevelopmentStorage=true Parametry połączenia umożliwia zbieranie danych diagnostycznych podczas uruchamiania projektu usługi w chmurze w programie Visual Studio przy użyciu emulatora usługi Azure Storage. Wszystkie dane diagnostyczne są zbierane na koncie magazynu (Development Storage).
  • Konto magazynu diagnostyki parametry połączenia (Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString) jest ponownie przechowywane w pliku konfiguracji usługi (cscfg). W zestawie Azure SDK 2.5 konto magazynu diagnostycznego zostało określone w pliku diagnostics.wadcfgx.

Istnieją pewne istotne różnice między działaniem parametry połączenia w zestawie Azure SDK 2.4 i jego wcześniejszymi wersjami oraz sposobem działania w zestawie Azure SDK 2.6 i nowszych wersjach.

  • W zestawie Azure SDK 2.4 i starszych parametry połączenia był używany w czasie wykonywania przez wtyczkę diagnostyki, aby uzyskać informacje o koncie magazynu na potrzeby przesyłania dzienników diagnostycznych.
  • W zestawie Azure SDK 2.6 lub nowszym program Visual Studio używa parametry połączenia diagnostycznych do konfigurowania rozszerzenia diagnostycznego przy użyciu odpowiednich informacji o koncie magazynu podczas publikowania. Parametry połączenia umożliwia zdefiniowanie różnych kont magazynu dla różnych konfiguracji usługi, które będą używane przez program Visual Studio podczas publikowania. Jednak ponieważ wtyczka diagnostyki nie jest już dostępna (po zestawie Azure SDK 2.5), sam plik cscfg nie może włączyć rozszerzenia diagnostyki. Rozszerzenie należy włączyć oddzielnie za pomocą narzędzi, takich jak Visual Studio lub PowerShell.
  • Aby uprościć proces konfigurowania rozszerzenia diagnostycznego za pomocą programu PowerShell, dane wyjściowe pakietu z programu Visual Studio zawierają również publiczny kod XML konfiguracji rozszerzenia diagnostyki dla każdej roli. Program Visual Studio używa parametry połączenia diagnostycznych w celu wypełnienia informacji o koncie magazynu znajdujących się w konfiguracji publicznej. Publiczne pliki konfiguracji są tworzone w folderze Extensions i są zgodne ze wzorcem PaaSDiagnostics.<RoleName>.PubConfig.xml. Wszystkie wdrożenia oparte na programie PowerShell mogą używać tego wzorca do mapowania każdej konfiguracji na rolę.
  • Parametry połączenia w pliku cscfg jest również używany przez witrynę Azure Portal do uzyskiwania dostępu do danych diagnostycznych, dzięki czemu może pojawić się na karcie Monitorowanie. Parametry połączenia jest wymagany do skonfigurowania usługi w celu wyświetlania pełnych danych monitorowania w portalu.

Migrowanie projektów do zestawu Azure SDK 2.6 lub nowszego

Podczas migracji z zestawu Azure SDK 2.5 do zestawu Azure SDK 2.6 lub nowszego, jeśli masz konto magazynu diagnostycznego określone w pliku wadcfgx, pozostanie tam. Aby skorzystać z elastyczności korzystania z różnych kont magazynu dla różnych konfiguracji magazynu, musisz ręcznie dodać parametry połączenia do projektu. Jeśli migrujesz projekt z zestawu Azure SDK 2.4 lub starszego do zestawu Azure SDK 2.6, zostaną zachowane parametry połączenia diagnostyczne. Należy jednak pamiętać o zmianach sposobu traktowania parametry połączenia w zestawie Azure SDK 2.6, jak określono w poprzedniej sekcji.

Jak program Visual Studio określa konto magazynu diagnostyki

  • Jeśli w pliku cscfg określono parametry połączenia diagnostyki, program Visual Studio używa go do konfigurowania rozszerzenia diagnostyki podczas publikowania i generowania publicznych plików XML konfiguracji podczas tworzenia pakietów.
  • Jeśli w pliku cscfg nie określono żadnych parametry połączenia diagnostycznych, program Visual Studio powraca do korzystania z konta magazynu określonego w pliku wadcfgx w celu skonfigurowania rozszerzenia diagnostyki podczas publikowania i generowania publicznych plików XML konfiguracji podczas pakowania.
  • Diagnostyka parametry połączenia w pliku cscfg ma pierwszeństwo przed kontem magazynu w pliku wadcfgx. Jeśli w pliku cscfg określono parametry połączenia diagnostyki, program Visual Studio używa tego i ignoruje konto magazynu w pliku .wadcfgx.

Co to jest "Aktualizowanie magazynu programistycznego parametry połączenia s..." czy pole wyboru?

Pole wyboru Update Development Storage parametry połączenia s for Diagnostics and Caching with Microsoft Azure storage account credentials when publishing to Microsoft Azure (Aktualizowanie magazynu deweloperskich parametry połączenia na potrzeby diagnostyki i buforowania przy użyciu poświadczeń konta parametry połączenia usługi Microsoft Azure Storage określonego podczas publikowania).

Załóżmy na przykład, że zaznaczysz to pole wyboru, a diagnostyka parametry połączenia określa UseDevelopmentStorage=truewartość . Po opublikowaniu projektu na platformie Azure program Visual Studio automatycznie zaktualizuje parametry połączenia diagnostyki przy użyciu konta magazynu określonego w kreatorze publikowania. Jeśli jednak rzeczywiste konto magazynu zostało określone jako parametry połączenia diagnostyki, zamiast tego używane jest to konto.

Różnice w funkcjach diagnostycznych między zestawem Azure SDK 2.4 i starszymi oraz zestawami Azure SDK 2.5 i nowszymi

W przypadku uaktualniania projektu z zestawu Azure SDK 2.4 do zestawu Azure SDK 2.5 lub nowszego należy pamiętać o następujących różnicach w funkcjach diagnostycznych.

  • Interfejsy API konfiguracji są przestarzałe — konfiguracja programowa diagnostyki jest dostępna w zestawie Azure SDK 2.4 lub starszych wersjach, ale jest przestarzała w zestawie Azure SDK 2.5 lub nowszym. Jeśli konfiguracja diagnostyki jest obecnie zdefiniowana w kodzie, należy ponownie skonfigurować te ustawienia od podstaw w zmigrowanym projekcie, aby diagnostyka nadal działała. Plik konfiguracji diagnostyki dla zestawu Azure SDK 2.4 to diagnostics.wadcfg i diagnostics.wadcfgx dla zestawu Azure SDK 2.5 lub nowszego.
  • Diagnostyka aplikacji usług w chmurze można skonfigurować tylko na poziomie roli, a nie na poziomie wystąpienia.
  • Za każdym razem, gdy wdrażasz aplikację, konfiguracja diagnostyki jest aktualizowana — może to spowodować problemy z parzystością, jeśli zmienisz konfigurację diagnostyki z Eksploratora serwera, a następnie ponownie wdrożysz aplikację.
  • W zestawie Azure SDK 2.5 lub nowszym zrzuty awaryjne są konfigurowane w pliku konfiguracji diagnostyki, a nie w kodzie — jeśli w kodzie skonfigurowano zrzuty awaryjne, musisz ręcznie przenieść konfigurację z kodu do pliku konfiguracji, ponieważ zrzuty awaryjne nie są przenoszone podczas migracji do zestawu Azure SDK 2.6.