Udostępnij za pośrednictwem


Monitorowanie usługi Azure App Service

W tym artykule opisano:

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

Uwaga

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.

Monitorowanie usługi App Service

usługa aplikacja systemu Azure udostępnia kilka opcji monitorowania zasobów monitorowania pod kątem dostępności, wydajności i operacji. Opcje obejmują ustawienia diagnostyczne, usługę Application Insights, strumień dziennika, metryki, limity przydziału i alerty oraz dzienniki aktywności.

Na stronie witryny Azure Portal dla aplikacji internetowej możesz wybrać pozycję Diagnozuj i rozwiązać problemy z lewej nawigacji, aby uzyskać dostęp do pełnej diagnostyki usługi App Service dla aplikacji. Aby uzyskać więcej informacji na temat narzędzia diagnostycznego usługi App Service, zobacz omówienie diagnostyki usługi aplikacja systemu Azure Service.

Usługa App Service udostępnia wbudowane rejestrowanie diagnostyczne ułatwiające debugowanie aplikacji. Aby uzyskać więcej informacji na temat wbudowanych dzienników, zobacz Stream diagnostics logs (Dzienniki diagnostyczne usługi Stream).

Możesz również użyć funkcji sprawdzania kondycji platformy Azure do monitorowania wystąpień usługi App Service. Aby uzyskać więcej informacji, zobacz Monitorowanie wystąpień usługi App Service przy użyciu kontroli kondycji.

Jeśli używasz ASP.NET Core, ASP.NET, Java, Node.js lub Python, zalecamy włączenie możliwości obserwowania w usłudze Application Insights. Aby dowiedzieć się więcej o środowiskach obserwacji oferowanych przez usługę Application Insights, zobacz Omówienie usługi Application Insights.

Scenariusze monitorowania

W poniższej tabeli wymieniono metody monitorowania do użycia w różnych scenariuszach.

Scenariusz Metoda monitorowania
Chcę monitorować metryki i dzienniki platformy Metryki platformy usługi Azure Monitor
Chcę monitorować wydajność i użycie aplikacji (Azure Monitor) Application Insights
Chcę monitorować wbudowane dzienniki na potrzeby testowania i programowania Strumień dziennika
Chcę monitorować limity zasobów i konfigurować alerty Limity przydziału i alerty
Chcę monitorować zdarzenia zasobów aplikacji internetowej Dzienniki aktywności
Chcę wizualnie monitorować metryki Metryki

Wyniki analiz

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 pulpity nawigacyjne są nazywane szczegółowymi informacjami i można je znaleźć w centrum szczegółowych informacji usługi Azure Monitor w witrynie Azure Portal.

Szczegółowe dane dotyczące aplikacji

Usługa Application Insights używa zaawansowanej platformy analizy danych w usłudze Azure Monitor, aby zapewnić szczegółowe informacje na temat operacji aplikacji. Usługa Application Insights monitoruje dostępność, wydajność i użycie aplikacji internetowych, dzięki czemu można identyfikować i diagnozować błędy bez oczekiwania na ich zgłaszanie przez użytkownika.

Usługa Application Insights obejmuje punkty połączenia z różnymi narzędziami programistycznymi i integruje się z programem Visual Studio w celu obsługi procesów DevOps. Aby uzyskać więcej informacji, zobacz Monitorowanie aplikacji dla usługi App Service.

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 monitorowania w metryki i dzienniki na podstawie typów zasobów, nazywanych również 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 App Service, zobacz Dokumentacja danych monitorowania usługi App Service.

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 magazyn z własnym interfejsem w witrynie Azure Portal.

Opcjonalnie możesz kierować dane metryki i dziennika aktywności do magazynu 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.

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.

Kolekcja: usługa Azure Monitor automatycznie zbiera 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 sprawdzić, czy możesz użyć ustawienia diagnostycznego, aby kierować metrykę do dzienników usługi Azure Monitor/ usługi 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.

Aby uzyskać listę dostępnych metryk dla usługi App Service, zobacz Dokumentacja danych monitorowania usługi App Service.

Aby uzyskać pomoc dotyczącą metryk w usłudze App Service, zobacz Omówienie metryk. Metryki można wyświetlać według agregacji danych (tj. średniej, maksymalnej, min itp.), wystąpień, zakresu czasu i innych filtrów. Metryki mogą monitorować wydajność, pamięć, procesor CPU i inne atrybuty.

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.

Kolekcja: dzienniki zasobów nie są zbierane i przechowywane do momentu utworzenia ustawienia diagnostycznego i kierowania dzienników do co najmniej jednej lokalizacji. Podczas tworzenia ustawienia diagnostycznego należy określić kategorie dzienników, które mają być zbierane. Istnieje wiele sposobów tworzenia i konserwacji ustawień diagnostycznych, w tym witryny Azure Portal, programowo i choć 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 App Service, zobacz Dokumentacja danych monitorowania usługi App Service.

Napiwek

Dzienniki są grupowane w grupach kategorii. Grupy kategorii to zbiór różnych dzienników, które ułatwiają osiągnięcie różnych celów monitorowania.
Grupa kategorii inspekcji umożliwia wybranie dzienników zasobów, które są niezbędne do inspekcji zasobu. Aby uzyskać więcej informacji, zobacz Ustawienia diagnostyczne w dziennikach zasobów usługi Azure Monitor.

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 magazynie do wyświetlania w witrynie Azure Portal.

Routing: możesz wysyłać dane dziennika aktywności do dzienników usługi Azure Monitor, aby móc analizować je 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.

Dzienniki aktywności platformy Azure dla usługi App Service

Dzienniki aktywności platformy Azure dla usługi App Service zawierają szczegółowe informacje, takie jak:

  • Jakie operacje zostały wykonane na zasobach (np. plany usługi App Service)
  • Użytkownika, który uruchomił operację
  • Czas wystąpienia operacji
  • Stan operacji
  • Wartości właściwości ułatwiające badanie operacji

Dzienniki aktywności platformy Azure można wykonywać w zapytaniach przy użyciu witryny Azure Portal, programu PowerShell, interfejsu API REST lub interfejsu wiersza polecenia.

Wysyłanie dzienników aktywności do usługi Event Grid

Dzienniki aktywności są oparte na użytkowniku, ale istnieje nowa integracja usługi Azure Event Grid z usługą App Service (wersja zapoznawcza), która rejestruje zarówno akcje użytkownika, jak i zdarzenia automatyczne. Za pomocą usługi Event Grid można skonfigurować procedurę obsługi w celu reagowania na te zdarzenia. Przykładowo możesz użyć usługi Event Grid, aby natychmiast wyzwalać funkcję bezserwerową i uruchamiać analizę obrazu za każdym razem, gdy do kontenera magazynu obiektów blob zostanie dodane nowe zdjęcie.

Ewentualnie możesz użyć usług Event Grid i Logic Apps do przetwarzania danych w dowolnym miejscu, bez pisania kodu. Usługa Event Grid łączy źródła danych i procedury obsługi zdarzeń.

Aby wyświetlić właściwości i schemat zdarzeń usługi App Service, zobacz aplikacja systemu Azure Service jako źródło usługi Event Grid.

Strumień dziennika (za pośrednictwem dzienników usługi App Service)

Platforma Azure udostępnia wbudowaną diagnostykę, która pomaga podczas testowania i programowania w celu debugowania aplikacji usługi App Service. Strumień dzienników może służyć do uzyskiwania szybkiego dostępu do danych wyjściowych i błędów napisanych przez aplikację oraz dzienników z serwera internetowego. Są to standardowe dzienniki danych wyjściowych/błędów oprócz dzienników serwera internetowego.

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:

  • Eksplorator metryk — narzędzie w witrynie Azure Portal, które umożliwia wyświetlanie i analizowanie metryk dla zasobów platformy Azure. Aby uzyskać więcej informacji, zobacz Analizowanie metryk za pomocą Eksploratora metryk usługi Azure Monitor.

  • Log Analytics — narzędzie w witrynie Azure Portal, które umożliwia wykonywanie zapytań i analizowanie danych dzienników przy użyciu języka zapytań Kusto (KQL). Aby uzyskać więcej informacji, zobacz Rozpoczynanie pracy z zapytaniami dzienników w usłudze Azure Monitor.

  • Dziennik aktywności, który zawiera interfejs użytkownika w witrynie Azure Portal do wyświetlania i podstawowych wyszukiwań. Aby przeprowadzić bardziej szczegółową analizę, musisz kierować dane do dzienników usługi Azure Monitor i uruchamiać bardziej złożone zapytania w usłudze Log Analytics.

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

  • Pulpity nawigacyjne, które umożliwiają łączenie różnych rodzajów danych w jednym okienku w witrynie Azure Portal.
  • Skoroszyty, dostosowywalne raporty, które można utworzyć w witrynie Azure Portal. Skoroszyty mogą zawierać tekst, metryki i zapytania dziennika.
  • Grafana to otwarte narzędzie platformy, które wyróżnia się na operacyjnych pulpitach nawigacyjnych. 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.

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:

  • Metryki: użyj interfejsu API REST dla metryk , aby wyodrębnić dane metryk z bazy danych metryk usługi Azure Monitor. Interfejs API obsługuje wyrażenia filtrów w celu uściślinia pobranych danych. Aby uzyskać więcej informacji, zobacz Dokumentacja interfejsu API REST usługi Azure Monitor.

  • Dzienniki: użyj interfejsu API REST lub skojarzonych bibliotek klienckich.

  • Inną opcją jest eksportowanie danych obszaru roboczego.

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 magazynie dzienników usługi 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.

Następujące przykładowe zapytanie może ułatwić monitorowanie dzienników aplikacji przy użyciu polecenia AppServiceAppLogs:

AppServiceAppLogs 
| project CustomLevel, _ResourceId
| summarize count() by CustomLevel, _ResourceId

Następujące przykładowe zapytanie może ułatwić monitorowanie dzienników HTTP przy użyciu AppServiceHTTPLogs lokalizacji lub nowszej HTTP response code 500 :

AppServiceHTTPLogs 
//| where ResourceId = "MyResourceId" // Uncomment to get results for a specific resource Id when querying over a group of Apps
| where ScStatus >= 500
| reduce by strcat(CsMethod, ':\\', CsUriStem)

Następujące przykładowe zapytanie może pomóc w monitorze błędów HTTP 500 przez dołączenie AppServiceConsoleLogs i AppserviceHTTPLogs:

let myHttp = AppServiceHTTPLogs | where  ScStatus == 500 | project TimeGen=substring(TimeGenerated, 0, 19), CsUriStem, ScStatus;  

let myConsole = AppServiceConsoleLogs | project TimeGen=substring(TimeGenerated, 0, 19), ResultDescription;

myHttp | join myConsole on TimeGen | project TimeGen, CsUriStem, ScStatus, ResultDescription;   

Zobacz Zapytania usługi Azure Monitor dla usługi App Service , aby uzyskać więcej przykładowych zapytań.

Alerty

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. Przykłady typowych alertów dotyczących zasobów platformy Azure można znaleźć w temacie Przykładowe zapytania alertów dziennika. Witryna Alerty bazowe usługi Azure Monitor (AMBA) udostępnia częściowo zautomatyzowaną metodę implementowania ważnych alertów metryk platformy, pulpitów nawigacyjnych i wytycznych. 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).

Typowy schemat alertu standandaryzuje użycie 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 metryk oceniają metryki 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 metryk 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 usługi Resource Health i alerty usługi Service Health to alerty dziennika aktywności, które zgłaszają kondycję usługi 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 metryki do wielu zasobów tego samego typu, które istnieją w tym samym regionie świadczenia usługi 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 Monitorowanie wielu zasobów przy użyciu jednej reguły alertu.

Uwaga

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.

Limity przydziału i alerty

Aplikacje hostowane w usłudze App Service podlegają pewnym limitom zasobów, z których mogą korzystać. Limity są definiowane przez plan usługi App Service skojarzony z aplikacją. Metryki dla aplikacji lub planu usługi App Service można podłączyć do alertów.

Reguły alertów usługi App Service

W poniższej tabeli wymieniono typowe i zalecane reguły alertów dla usługi App Service.

Typ alertu Stan Przykłady
Metric Średnie połączenia Gdy liczba połączeń przekracza ustawioną wartość
Metric HTTP 404 Gdy odpowiedzi HTTP 404 przekraczają ustawioną wartość
Metric Błędy serwera HTTP Gdy błędy HTTP 5xx przekraczają ustawioną wartość
Dziennik aktywności Tworzenie lub aktualizowanie aplikacji internetowej Po utworzeniu lub zaktualizowaniu aplikacji
Dziennik aktywności Usuwanie aplikacji internetowej Gdy aplikacja zostanie usunięta
Dziennik aktywności Uruchom ponownie aplikację internetową Po ponownym uruchomieniu aplikacji
Dziennik aktywności Zatrzymywanie aplikacji internetowej Po zatrzymaniu aplikacji

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.