Wprowadzenie do monitorowania usługi w chmurze (klasycznej)

Ważne

Cloud Services (wersja klasyczna) jest teraz przestarzała dla nowych klientów i zostanie wycofana 31 sierpnia 2024 r. dla wszystkich klientów. Nowe wdrożenia powinny używać nowego modelu wdrażania opartego na usłudze Azure Resource Manager Azure Cloud Services (wsparcie dodatkowe).

Kluczowe metryki wydajności można monitorować dla dowolnej usługi w chmurze. Każda rola usługi w chmurze zbiera minimalne dane: użycie procesora CPU, użycie sieci i wykorzystanie dysku. Jeśli usługa w chmurze ma Microsoft.Azure.Diagnostics rozszerzenie zastosowane do roli, ta rola może zbierać dodatkowe punkty danych. Ten artykuł zawiera wprowadzenie do Diagnostyka Azure dla Cloud Services.

W przypadku podstawowego monitorowania dane licznika wydajności z wystąpień ról są próbkowane i zbierane w 3-minutowych odstępach czasu. Te podstawowe dane monitorowania nie są przechowywane na koncie magazynu i nie są z nimi związane żadne dodatkowe koszty.

Dzięki zaawansowanego monitorowania dodatkowe metryki są próbkowane i zbierane w odstępach 5 minut, 1 godziny i 12 godzin. Zagregowane dane są przechowywane na koncie magazynu, w tabelach i są czyszczone po 10 dniach. Używane konto magazynu jest konfigurowane przez rolę; Dla różnych ról można używać różnych kont magazynu. Jest to skonfigurowane przy użyciu parametrów połączenia w plikach csdef i cscfg .

Podstawowe monitorowanie

Zgodnie z wprowadzeniem usługa w chmurze automatycznie zbiera podstawowe dane monitorowania z maszyny wirtualnej hosta. Te dane obejmują wartość procentową procesora CPU, sieć w/wy oraz odczyt/zapis na dysku. Zebrane dane monitorowania są automatycznie wyświetlane na stronach przeglądów i metryk usługi w chmurze w Azure Portal.

Podstawowe monitorowanie nie wymaga konta magazynu.

Podstawowe kafelki monitorowania usługi w chmurze

Zaawansowane monitorowanie

Zaawansowane monitorowanie obejmuje użycie rozszerzenia Diagnostyka Azure (i opcjonalnie zestawu SDK usługi Application Insights) w roli, którą chcesz monitorować. Rozszerzenie diagnostyczne używa pliku konfiguracji (na rolę) o nazwie diagnostics.wadcfgx w celu skonfigurowania monitorowanych metryk diagnostycznych. Rozszerzenie Diagnostyka Azure zbiera i przechowuje dane na koncie usługi Azure Storage. Te ustawienia są konfigurowane w plikach .wadcfgx, csdef i cscfg . Oznacza to, że istnieje dodatkowy koszt związany z zaawansowanym monitorowaniem.

Po utworzeniu każdej roli program Visual Studio dodaje do niego rozszerzenie Diagnostyka Azure. To rozszerzenie diagnostyczne może zbierać następujące typy informacji:

  • Niestandardowe liczniki wydajności
  • Dzienniki aplikacji
  • Dzienniki zdarzeń systemu Windows
  • Źródło zdarzeń platformy .NET
  • Dzienniki usług IIS
  • Śledzenie zdarzeń systemu Windows w oparciu o manifest
  • Zrzuty awaryjne
  • Dzienniki błędów klienta

Ważne

Chociaż wszystkie te dane są agregowane na koncie magazynu, portal nie zapewnia natywnego sposobu tworzenia wykresu danych. Zdecydowanie zaleca się zintegrowanie innej usługi, takiej jak Application Insights, z aplikacją.

Konfigurowanie rozszerzenia diagnostyki

Najpierw, jeśli nie masz klasycznego konta magazynu, utwórz je. Upewnij się, że konto magazynu zostało utworzone przy użyciu określonego klasycznego modelu wdrażania .

Następnie przejdź do zasobu konta magazynu (klasycznego). Wybierz pozycję Ustawienia>Klucze dostępu i skopiuj wartość Podstawowe parametry połączenia . Ta wartość jest potrzebna dla usługi w chmurze.

Istnieją dwa pliki konfiguracji, które należy zmienić w celu włączenia zaawansowanej diagnostyki: ServiceDefinition.csdef i ServiceConfiguration.cscfg.

ServiceDefinition.csdef

W pliku ServiceDefinition.csdef dodaj nowe ustawienie o nazwie Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString dla każdej roli korzystającej z zaawansowanej diagnostyki. Program Visual Studio dodaje tę wartość do pliku podczas tworzenia nowego projektu. Jeśli brakuje go, możesz go teraz dodać.

<ServiceDefinition name="AnsurCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6">
  <WorkerRole name="WorkerRoleWithSBQueue1" vmsize="Small">
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />

Definiuje nowe ustawienie, które należy dodać do każdego pliku ServiceConfiguration.cscfg .

Najprawdopodobniej masz dwa pliki cscfg o nazwie ServiceConfiguration.cloud.cscfg do wdrożenia na platformie Azure i jeden o nazwie ServiceConfiguration.local.cscfg , który jest używany do wdrożeń lokalnych w środowisku emulowanym. Otwórz i zmień każdy plik cscfg . Dodaj ustawienie o nazwie Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString. Ustaw wartość na podstawowe parametry połączenia klasycznego konta magazynu. Jeśli chcesz użyć magazynu lokalnego na komputerze deweloperskim, użyj polecenia UseDevelopmentStorage=true.

<ServiceConfiguration serviceName="AnsurCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2015-04.2.6">
  <Role name="WorkerRoleWithSBQueue1">
    <Instances count="1" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=mystorage;AccountKey=KWwkdfmskOIS240jnBOeeXVGHT9QgKS4kIQ3wWVKzOYkfjdsjfkjdsaf+sddfwwfw+sdffsdafda/w==" />
      
      <!-- or use the local development machine for storage
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
      -->

Korzystanie z usługi Application Insights

Podczas publikowania usługi w chmurze z poziomu programu Visual Studio jest dostępna opcja wysyłania danych diagnostycznych do usługi Application Insights. W tym czasie możesz utworzyć zasób platformy Azure usługi Application Insights lub wysłać dane do istniejącego zasobu platformy Azure. Usługę w chmurze można monitorować za pomocą usługi Application Insights pod kątem dostępności, wydajności, awarii i użycia. Wykresy niestandardowe można dodać do usługi Application Insights, aby zobaczyć najbardziej istotne dane. Dane wystąpienia roli można zbierać przy użyciu zestawu SDK usługi Application Insights w projekcie usługi w chmurze. Aby uzyskać więcej informacji na temat sposobu integrowania usługi Application Insights, zobacz Application Insights z Cloud Services.

Należy pamiętać, że chociaż można użyć usługi Application Insights do wyświetlania liczników wydajności (i innych ustawień) określonych za pomocą rozszerzenia windows Diagnostyka Azure, możesz uzyskać bardziej zaawansowane środowisko dzięki integracji zestawu SDK usługi Application Insights z rolami procesów roboczych i internetowych.

Następne kroki