Udostępnij przez


Monitorowanie usługi Azure Batch

W tym artykule opisano:

  • Typy danych monitorowania, które można zbierać dla tej usługi.
  • Sposoby analizowania tych danych.

Uwaga / Notatka

Jeśli znasz już tę usługę i/lub usługę Azure Monitor i chcesz wiedzieć, jak analizować dane monitorowania, zobacz sekcję Analizowanie pod koniec tego artykułu.

Jeśli masz krytyczne aplikacje i procesy biznesowe korzystające z zasobów platformy Azure, musisz monitorować i otrzymywać alerty dla systemu. Usługa Azure Monitor zbiera i agreguje metryki i dzienniki z każdego składnika systemu. Usługa Azure Monitor zapewnia wgląd w dostępność, wydajność i odporność oraz powiadamia o problemach. Do konfigurowania i wyświetlania danych monitorowania można użyć witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia platformy Azure, interfejsu API REST lub bibliotek klienckich.

Typy zasobów

Platforma Azure używa koncepcji typów zasobów i identyfikatorów, aby zidentyfikować wszystko w subskrypcji. Typy zasobów są również częścią identyfikatorów zasobów dla każdego zasobu uruchomionego na platformie Azure. Na przykład jeden typ zasobu dla maszyny wirtualnej to Microsoft.Compute/virtualMachines. Aby uzyskać listę usług i skojarzonych z nimi typów zasobów, zobacz Dostawcy zasobów.

Usługa Azure Monitor podobnie organizuje podstawowe dane dotyczące monitorowania w metryki i dzienniki według typów zasobów, zwanych także przestrzeniami nazw. Różne metryki i dzienniki są dostępne dla różnych typów zasobów. Usługa może być skojarzona z więcej niż jednym typem zasobu.

Aby uzyskać więcej informacji na temat typów zasobów dla usługi Batch, zobacz Dokumentacja danych monitorowania usługi Batch.

Magazyn danych

W przypadku usługi Azure Monitor:

  • Dane metryk są przechowywane w bazie danych metryk usługi Azure Monitor.
  • Dane dziennika są przechowywane w magazynie dzienników usługi Azure Monitor. Log Analytics to narzędzie w witrynie Azure Portal, które może wykonywać zapytania dotyczące tego magazynu.
  • Dziennik aktywności platformy Azure to oddzielny sklep z własnym interfejsem w portalu Azure.

Możesz opcjonalnie kierować dane metryk i dzienników aktywności do przechowalni dzienników usługi Azure Monitor. Następnie możesz użyć usługi Log Analytics, aby wykonać zapytanie o dane i skorelować je z innymi danymi dziennika.

Wiele usług może używać ustawień diagnostycznych do wysyłania danych metryk i dzienników do innych lokalizacji przechowywania poza usługą Azure Monitor. Przykłady obejmują usługę Azure Storage, hostowane systemy partnerskie i systemy partnerskie spoza platformy Azure przy użyciu usługi Event Hubs.

Aby uzyskać szczegółowe informacje na temat sposobu przechowywania danych przez usługę Azure Monitor, zobacz Azure Monitor data platformy.

Uzyskiwanie dostępu do dzienników diagnostycznych w magazynie

Jeśli zarchiwizujesz dzienniki diagnostyczne usługi Batch na koncie magazynu, kontener magazynu zostanie utworzony na koncie magazynu natychmiast po wystąpieniu powiązanego zdarzenia. Obiekty blob są tworzone zgodnie z następującym wzorcem nazewnictwa:

insights-{log category name}/resourceId=/SUBSCRIPTIONS/{subscription ID}/
RESOURCEGROUPS/{resource group name}/PROVIDERS/MICROSOFT.BATCH/
BATCHACCOUNTS/{Batch account name}/y={four-digit numeric year}/
m={two-digit numeric month}/d={two-digit numeric day}/
h={two-digit 24-hour clock hour}/m=00/PT1H.json

Przykład:

insights-metrics-pt1m/resourceId=/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/
RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.BATCH/
BATCHACCOUNTS/MYBATCHACCOUNT/y=2018/m=03/d=05/h=22/m=00/PT1H.json

Każdy plik blobPT1H.jsonzawiera zdarzenia w formacie JSON, które wystąpiły w ciągu godziny określonej w adresie URL blob (na przykład ). W ciągu obecnej godziny zdarzenia są dołączane do pliku PT1H.json w miarę ich występowania. Wartość minutowa (m=00) jest zawsze 00, ponieważ zdarzenia w dzienniku diagnostycznym są dzielone na indywidualne obiekty blob co godzinę. Wszystkie godziny są w strefie czasowej UTC.

Poniższy przykład przedstawia PoolResizeCompleteEvent wpis do pliku dziennika PT1H.json. Wpis zawiera informacje o bieżącej i docelowej liczbie węzłów dedykowanych i o niskim priorytcie oraz godzinie rozpoczęcia i zakończenia operacji.

{ "Tenant": "65298bc2729a4c93b11c00ad7e660501", "time": "2019-08-22T20:59:13.5698778Z", "resourceId": "/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.BATCH/BATCHACCOUNTS/MYBATCHACCOUNT/", "category": "ServiceLog", "operationName": "PoolResizeCompleteEvent", "operationVersion": "2017-06-01", "properties": {"id":"MYPOOLID","nodeDeallocationOption":"Requeue","currentDedicatedNodes":10,"targetDedicatedNodes":100,"currentLowPriorityNodes":0,"targetLowPriorityNodes":0,"enableAutoScale":false,"isAutoPool":false,"startTime":"2019-08-22 20:50:59.522","endTime":"2019-08-22 20:59:12.489","resultCode":"Success","resultMessage":"The operation succeeded"}}

Aby programatycznie uzyskać dostęp do dzienników na koncie magazynu, użyj interfejsów API magazynu.

Metryki platformy usługi Azure Monitor

Usługa Azure Monitor udostępnia metryki platformy dla większości usług. Te metryki to:

  • Definiowane indywidualnie dla każdej przestrzeni nazw.
  • Przechowywane w bazie danych metryk szeregów czasowych usługi Azure Monitor.
  • Lekki i zdolny do obsługi alertów niemal w czasie rzeczywistym.
  • Służy do śledzenia wydajności zasobu w czasie.

Zbieranie danych: usługa Azure Monitor automatycznie gromadzi metryki platformy. Nie jest wymagana żadna konfiguracja.

Routing: możesz również kierować niektóre metryki platformy do dzienników usługi Azure Monitor/ usługi Log Analytics, aby móc wykonywać zapytania względem nich przy użyciu innych danych dziennika. Sprawdź ustawienie eksportu DS dla każdej metryki, aby zobaczyć, czy możesz użyć ustawienia diagnostycznego do kierowania metryk do dzienników Azure Monitor lub Log Analytics.

Aby uzyskać listę wszystkich metryk, które można zebrać dla wszystkich zasobów w usłudze Azure Monitor, zobacz Obsługiwane metryki w usłudze Azure Monitor.

Przykładami metryk na koncie usługi Batch są zdarzenia tworzenia puli, Low-Priority liczba węzłów i zdarzenia ukończenia zadania. Te metryki mogą pomóc w identyfikowaniu trendów i mogą służyć do analizy danych.

Uwaga / Notatka

Metryki emitowane w ciągu ostatnich 3 minut mogą nadal być agregowane, więc wartości mogą być niedoraportowane w tym przedziale czasu. Dostarczanie metryk nie jest gwarantowane i może być zakłócone przez dostarczenia w niewłaściwej kolejności, utratę danych lub duplikowanie.

Aby uzyskać pełną listę dostępnych metryk dla usługi Batch, zobacz Dokumentacja danych monitorowania usługi Batch.

Dzienniki zasobów usługi Azure Monitor

Dzienniki zasobów zapewniają wgląd w operacje wykonywane przez zasób platformy Azure. Dzienniki są generowane automatycznie, ale należy skierować je do dzienników usługi Azure Monitor, aby je zapisać lub wysłać do nich zapytanie. Dzienniki są zorganizowane w kategoriach. Dana przestrzeń nazw może mieć wiele kategorii dziennika zasobów.

<С0>Zbieranie: Dzienniki zasobów nie są zbierane i przechowywane do momentu utworzenia ustawienia diagnostycznego i przesyłania dzienników do co najmniej jednej lokalizacji. Kiedy tworzysz ustawienie diagnostyczne, określasz, które kategorie logów chcesz zbierać. Istnieje wiele sposobów tworzenia i konserwacji ustawień diagnostycznych, w tym za pomocą portalu Azure, programowo oraz za pomocą usługi Azure Policy.

Routing: sugerowaną wartością domyślną jest kierowanie dzienników zasobów do dzienników usługi Azure Monitor, co umożliwia wykonywanie zapytań względem nich przy użyciu innych danych dziennika. Dostępne są również inne lokalizacje, takie jak Azure Storage, Azure Event Hubs i niektórzy partnerzy monitorowania firmy Microsoft. Aby uzyskać więcej informacji, zobacz Dzienniki zasobów platformy Azure i lokalizacje docelowe dziennika zasobów.

Aby uzyskać szczegółowe informacje na temat zbierania, przechowywania i routingu dzienników zasobów, zobacz Ustawienia diagnostyczne w usłudze Azure Monitor.

Aby uzyskać listę wszystkich dostępnych kategorii dzienników zasobów w usłudze Azure Monitor, zobacz Obsługiwane dzienniki zasobów w usłudze Azure Monitor.

Wszystkie dzienniki zasobów w usłudze Azure Monitor mają te same pola nagłówka, a następnie pola specyficzne dla usługi. Typowy schemat jest opisany w schemacie dziennika zasobów usługi Azure Monitor.

Aby uzyskać dostępne kategorie dzienników zasobów, skojarzone z nimi tabele usługi Log Analytics i schematy dzienników dla usługi Batch, zobacz Dokumentacja danych monitorowania usługi Batch.

Musisz jawnie włączyć ustawienia diagnostyczne dla każdego konta usługi Batch, które chcesz monitorować.

W przypadku usługi Batch można zebrać następujące dzienniki:

Poniższy zrzut ekranu przedstawia przykładowe ustawienie diagnostyczne, które wysyła wszystkie dzienniki i wszystkie metryki do obszaru roboczego Log Analytics.

Zrzut ekranu przedstawiający stronę ustawienia diagnostycznego, która przedstawia przykład.

Dziennik aktywności platformy Azure

Dziennik aktywności zawiera zdarzenia na poziomie subskrypcji, które śledzą operacje dla każdego zasobu platformy Azure widoczne spoza tego zasobu; na przykład utworzenie nowego zasobu lub uruchomienie maszyny wirtualnej.

Kolekcja: Zdarzenia dziennika aktywności są generowane automatycznie i zbierane w osobnym repozytorium do wyświetlania w portalu Azure.

Routing: Dane dziennika aktywności można wysyłać do Azure Monitor Logs, aby móc je analizować wraz z innymi danymi dziennika. Dostępne są również inne lokalizacje, takie jak Azure Storage, Azure Event Hubs i niektórzy partnerzy monitorowania firmy Microsoft. Aby uzyskać więcej informacji na temat kierowania dziennika aktywności, zobacz Omówienie dziennika aktywności platformy Azure.

W przypadku kont usługi Batch dziennik aktywności zbiera zdarzenia związane z tworzeniem konta i usuwaniem i zarządzaniem kluczami.

Analizowanie danych monitorowania

Istnieje wiele narzędzi do analizowania danych monitorowania.

Narzędzia usługi Azure Monitor

Usługa Azure Monitor obsługuje następujące podstawowe narzędzia:

Narzędzia, które umożliwiają bardziej złożoną wizualizację, obejmują:

  • Panele, które umożliwiają łączenie różnych rodzajów danych w jednym okienku w portalu Azure.
  • Skoroszyty, dostosowywalne raporty, które można utworzyć w witrynie Azure Portal. Skoroszyty mogą zawierać tekst, metryki danych i zapytania dziennika.
  • Grafana to otwarte narzędzie platformowe, które wyróżnia się w tworzeniu dashboardów operacyjnych. Za pomocą narzędzia Grafana można tworzyć pulpity nawigacyjne zawierające dane z wielu źródeł innych niż usługa Azure Monitor.
  • Power BI, usługa analizy biznesowej, która udostępnia interaktywne wizualizacje w różnych źródłach danych. Usługę Power BI można skonfigurować tak, aby automatycznie importować dane dziennika z usługi Azure Monitor, aby korzystać z tych wizualizacji.

Podczas analizowania metryk liczbowych usługi Batch, takich jak liczba dedykowanych rdzeni czy liczba węzłów Low-Priority, użyj agregacji Średnia. W przypadku metryk opartych na zdarzeniach, takich jak Zmiana rozmiaru puli, użyj agregacji Liczba . Unikaj używania agregacji Suma , która sumuje wartości wszystkich punktów danych odebranych w okresie wykresu.

Narzędzia eksportu usługi Azure Monitor

Dane z usługi Azure Monitor można pobrać do innych narzędzi przy użyciu następujących metod:

Aby rozpocząć pracę z interfejsem API REST dla usługi Azure Monitor, zobacz Przewodnik po interfejsie API REST monitorowania platformy Azure.

Zapytania usługi Kusto

Dane monitorowania można analizować w repozytorium dzienników Azure Monitor / Log Analytics przy użyciu języka zapytań Kusto (KQL).

Ważne

Po wybraniu pozycji Dzienniki z menu usługi w portalu usługa Log Analytics zostanie otwarta z zakresem zapytania ustawionym na bieżącą usługę. Ten zakres oznacza, że zapytania dziennika będą zawierać tylko dane z tego typu zasobu. Jeśli chcesz uruchomić zapytanie zawierające dane z innych usług platformy Azure, wybierz pozycję Dzienniki z menu usługi Azure Monitor . Aby uzyskać szczegółowe informacje, zobacz Zakres zapytań dzienników i zakres czasu w usłudze Azure Monitor Log Analytics .

Aby uzyskać listę typowych zapytań dotyczących dowolnej usługi, zobacz interfejs zapytań usługi Log Analytics.

Przykładowe zapytania

Oto kilka przykładowych zapytań dziennika dla usługi Batch:

Zmiany rozmiaru puli: Wyświetla czas zmiany rozmiaru według puli i kodu wyniku (powodzenie lub niepowodzenie):

AzureDiagnostics
| where OperationName=="PoolResizeCompleteEvent"
| summarize operationTimes=make_list(startTime_s) by poolName=id_s, resultCode=resultCode_s

Czasy trwania zadań: daje czas, który upłynął w sekundach, od rozpoczęcia zadania do ukończenia zadania.

AzureDiagnostics
| where OperationName=="TaskCompleteEvent"
| extend taskId=id_s, ElapsedTime=datetime_diff('second', executionInfo_endTime_t, executionInfo_startTime_t) // For longer running tasks, consider changing 'second' to 'minute' or 'hour'
| summarize taskList=make_list(taskId) by ElapsedTime

Niepowodzenia zadań według pracy: Wyświetla listę zadań, które zakończyły się niepowodzeniem, w podziale na zadania nadrzędne.

AzureDiagnostics
| where OperationName=="TaskFailEvent"
| summarize failedTaskList=make_list(id_s) by jobId=jobId_s, ResourceId

Powiadomienia

Alerty usługi Azure Monitor proaktywnie powiadamiają o znalezieniu określonych warunków w danych monitorowania. Alerty umożliwiają identyfikowanie i rozwiązywanie problemów w systemie przed ich zauważeniem przez klientów. Aby uzyskać więcej informacji, zobacz Alerty usługi Azure Monitor.

Istnieje wiele źródeł typowych alertów dotyczących zasobów platformy Azure. Aby zapoznać się z przykładami typowych alertów dotyczących zasobów platformy Azure, zobacz Przykładowe zapytania dziennika alertów. Strona Azure Monitor Baseline Alerts (AMBA) udostępnia częściowo zautomatyzowaną metodę implementowania ważnych alertów metryk platformowych, paneli kontrolnych i wskazówek. Witryna ma zastosowanie do stale powiększającego się podzestawu usług platformy Azure, w tym wszystkich usług, które są częścią strefy docelowej platformy Azure (ALZ).

Wspólny schemat alertu standaryzuje przyjmowanie powiadomień o alertach usługi Azure Monitor. Aby uzyskać więcej informacji, zobacz Wspólny schemat alertów.

Typy alertów

Możesz otrzymywać alerty dotyczące dowolnej metryki lub źródła danych dziennika na platformie danych usługi Azure Monitor. Istnieje wiele różnych typów alertów w zależności od usług, które monitorujesz i zbieranych danych monitorowania. Różne typy alertów mają różne zalety i wady. Aby uzyskać więcej informacji, zobacz Wybieranie odpowiedniego typu alertu monitorowania.

Poniższa lista zawiera opis typów alertów usługi Azure Monitor, które można utworzyć:

  • Alerty metryczne oceniają wskaźniki zasobów w regularnych odstępach czasu. Metryki mogą być metrykami platformy, metrykami niestandardowymi, dziennikami z usługi Azure Monitor przekonwertowanym na metryki lub metrykami usługi Application Insights. Alerty metryczne mogą również stosować wiele warunków i progów dynamicznych.
  • Alerty dzienników umożliwiają użytkownikom używanie zapytania usługi Log Analytics do oceny dzienników zasobów z wstępnie zdefiniowaną częstotliwością.
  • Alerty dziennika aktywności są wyzwalane, gdy wystąpi nowe zdarzenie dziennika aktywności zgodne ze zdefiniowanymi warunkami. Alerty kondycji zasobów oraz alerty kondycji usług to alerty dziennika aktywności, które raportują na temat stanu zdrowia usług i zasobów.

Niektóre usługi platformy Azure obsługują również alerty wykrywania inteligentnego, alerty Prometheus lub zalecane reguły alertów.

W przypadku niektórych usług można monitorować na dużą skalę, stosując tę samą regułę alertu metrycznego do wielu zasobów tego samego typu w tym samym regionie Azure. Poszczególne powiadomienia są wysyłane dla każdego monitorowanego zasobu. Aby uzyskać informacje o obsługiwanych usługach i chmurach platformy Azure, zobacz artykuł Monitorowanie wielu zasobów za pomocą jednej reguły alertu.

Uwaga / Notatka

Jeśli tworzysz lub uruchamiasz aplikację działającą w usłudze, usługa Azure Monitor application insights może oferować więcej typów alertów.

Reguły alertów usługi Batch

Ponieważ dostarczanie metryk może podlegać niespójnościom, takim jak dostarczanie poza zamówieniem, utrata danych lub duplikowanie, należy unikać alertów wyzwalanych w pojedynczym punkcie danych. Zamiast tego użyj progów, aby uwzględnić te niespójności w danym okresie.

Możesz na przykład skonfigurować alert związany z metryką, gdy liczba rdzeni o niskim priorytecie spadnie do pewnego poziomu. Następnie możesz użyć tego alertu w celu dostosowania kompozycji pul zasobów. Aby uzyskać najlepsze wyniki, ustaw okres wynoszący 10 lub więcej minut, w którym alert jest wyzwalany, jeśli średnia liczba rdzeni o niskim priorytcie jest niższa niż wartość progowa dla całego okresu. Ten okres umożliwia agregowanie metryk, dzięki czemu uzyskasz dokładniejsze wyniki.

W poniższej tabeli wymieniono niektóre wyzwalacze reguły alertu dla usługi Batch. Te reguły alertów to tylko przykłady. Można ustawić alerty dla dowolnej metryki, wpisu do dziennika lub wpisu dziennika aktywności wymienionego w dokumentacji monitorowania Batch.

Typ alertu Warunek Opis
Wskaźnik Liczba węzłów bezużytecznych Za każdym razem, gdy liczba nieużywanych węzłów jest większa niż 0
Wskaźnik Zdarzenia niepowodzenia zadania Zawsze, gdy łączna liczba zdarzeń niepowodzenia zadania jest większa niż próg dynamiczny

Zalecenia doradcy

W przypadku niektórych usług, jeśli podczas operacji zasobów wystąpią krytyczne warunki lub nieuchronne zmiany, na stronie Przegląd usługi w portalu zostanie wyświetlony alert. Więcej informacji i zalecanych poprawek alertu można znaleźć w temacie Zalecenia usługi Advisor w obszarze Monitorowanie w menu po lewej stronie. Podczas normalnych operacji nie są wyświetlane żadne zalecenia doradcy.

Aby uzyskać więcej informacji na temat usługi Azure Advisor, zobacz Omówienie usługi Azure Advisor.

Inne opcje monitorowania Batch

Batch Explorer to bezpłatne, rozbudowane, autonomiczne narzędzie klienckie ułatwiające tworzenie, debugowanie i monitorowanie aplikacji usługi Azure Batch. Usługa Azure Batch Insights z usługą Batch Explorer umożliwia uzyskiwanie statystyk systemowych dla węzłów usługi Batch, takich jak liczniki wydajności maszyny wirtualnej.

W aplikacjach usługi Batch możesz użyć biblioteki .NET usługi Batch do monitorowania lub wykonywania zapytań dotyczących stanu zasobów, w tym zadań, zadań, węzłów i pul. Przykład:

Interfejsy API usługi Batch umożliwiają tworzenie list zapytań dotyczących zadań, zadań usługi Batch, węzłów obliczeniowych i innych zasobów. Aby uzyskać więcej informacji na temat sposobu filtrowania zapytań list, zobacz Tworzenie zapytań w celu wydajnego wyświetlania listy zasobów usługi Batch.

Zamiast korzystać z potencjalnie czasochłonnych zapytań listowych, które zwracają szczegółowe informacje o dużych kolekcjach zadań lub węzłów, można użyć operacji Get Task Counts i List Pool Node Counts, aby uzyskać liczby zadań i węzłów obliczeniowych usługi Batch. Więcej informacji znajdziesz w Monitorowanie rozwiązań usługi Batch przez zliczanie zadań i węzłów według stanu.

Spostrzeżenia

Niektóre usługi na platformie Azure mają wbudowany pulpit nawigacyjny monitorowania w witrynie Azure Portal, który zapewnia punkt wyjścia do monitorowania usługi. Te panele są nazywane Insights i można je znaleźć w Insights Hub usługi Azure Monitor w portalu Azure.

Application Insights

Usługę Application Insights można zintegrować z aplikacjami usługi Azure Batch, aby instrumentować kod za pomocą niestandardowych metryk i śledzenia. Aby uzyskać szczegółowy przewodnik dotyczący dodawania usługi Application Insights do rozwiązania platformy .NET usługi Batch, instrumentowania kodu aplikacji, monitorowania aplikacji w witrynie Azure Portal i tworzenia niestandardowych pulpitów nawigacyjnych, zobacz Monitorowanie i debugowanie aplikacji .NET usługi Azure Batch za pomocą usługi Application Insights i towarzyszącego przykładu kodu.