Monitorowanie usługi Azure SignalR 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.

Typy zasobów

Platforma Azure używa koncepcji typów zasobów i identyfikatorów, aby zidentyfikować wszystko w subskrypcji. 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.

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.

Aby uzyskać więcej informacji na temat typów zasobów dla usługi Azure SignalR Service, zobacz Azure SignalR Service monitoring data reference (Dokumentacja danych monitorowania usługi Azure SignalR 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.

Dzienniki usługi Azure SignalR Service są przechowywane na koncie magazynu skonfigurowanym w ustawieniach diagnostycznych. Kontener o nazwie insights-logs-alllogs jest tworzony automatycznie do przechowywania dzienników zasobów. W kontenerze dzienniki są przechowywane w pliku resourceId=/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXXXXXXXX/RESOURCEGROUPS/XXXX/PROVIDERS/MICROSOFT. SIGNALRSERVICE/SIGNALR/XXX/y=RRRR/m=MM/d=DD/h=HH/m=00/PT1H.json. Zasadniczo ścieżka jest kombinacją elementów resource ID i Date Time. Pliki dziennika są dzielone na .hour W związku z tym minuty są zawsze m=00.

Wszystkie dzienniki są przechowywane w formacie JavaScript Object Notation (JSON). Poniższy kod jest przykładem ciągu JSON dziennika archiwum:

{
    "properties": {
        "message": "Entered Serverless mode.",
        "type": "ConnectivityLogs",
        "collection": "Connection",
        "connectionId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "userId": "User",
        "transportType": "WebSockets",
        "connectionType": "Client"
    },
    "operationName": "ServerlessModeEntered",
    "category": "AllLogs",
    "level": "Informational",
    "callerIpAddress": "xxx.xxx.xxx.xxx",
    "time": "2019-01-01T00:00:00Z",
    "resourceId": "/SUBSCRIPTIONS/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/RESOURCEGROUPS/XXXX/PROVIDERS/MICROSOFT.SIGNALRSERVICE/SIGNALR/XXX",
    "location": "xxxx"
}

Nazwy pól dla miejsc docelowych usługi Storage różnią się nieco od nazw pól usługi Log Analytics. Aby uzyskać szczegółowe informacje na temat mapowania nazw pól między tabelami usługi Storage i Log Analytics, zobacz Mapowanie tabeli dziennika zasobów.

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: zazwyczaj można również kierować 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. Aby uzyskać więcej informacji, zobacz ustawienie diagnostyczne Metryki. Aby uzyskać informacje na temat konfigurowania ustawień diagnostycznych dla usługi, zobacz Tworzenie ustawień diagnostycznych w usłudze Azure Monitor.

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.

Metryki usługi Azure SignalR Service

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

Stopień szczegółowości liczby komunikatów

Minimalny stopień szczegółowości liczby komunikatów to 2 KB ruchu danych wychodzących. Jeśli klient wysyła małe lub rzadkie komunikaty o łącznej wartości mniejszej niż 2 KB w okresie próbkowania, liczba komunikatów wynosi zero (0), mimo że komunikaty zostały wysłane. Sposobem sprawdzenia małej liczby lub rozmiaru komunikatów jest użycie metryki Ruch wychodzący, który jest liczbą wysłanych bajtów.

Błędy systemowe i błędy użytkownika

Metryki Błędy użytkownika i Błędy systemowe to procent prób operacji, takich jak nawiązywanie połączenia lub wysyłanie komunikatu, które zakończyło się niepowodzeniem. Błąd systemu to błąd w wewnętrznej logice systemu. Błąd użytkownika to zazwyczaj błąd aplikacji, często związany z siecią. Zwykle procent błędów systemowych powinien być niski, zbliżony do zera.

Ważne

W niektórych sytuacjach współczynnik błędów użytkownika jest bardzo wysoki, szczególnie w trybie bezserwerowym. W niektórych przeglądarkach klient usługi SignalR nie zamyka się bezpiecznie, gdy użytkownik zamknie stronę internetową. Połączenie może pozostać otwarte, ale nie odpowiada, dopóki usługa Azure SignalR Service nie zamknie go z powodu przekroczenia limitu czasu. Zamknięcie limitu czasu jest liczone w metryce Błędy użytkownika.

Metryki odpowiednie do skalowania automatycznego

Połączenie przydziału przydziału i obciążenie serwera pokazują procent wykorzystania lub obciążenia w porównaniu z aktualnie przydzieloną liczbą jednostek. Te metryki są często używane w regułach skalowania automatycznego. Jeśli na przykład bieżąca alokacja jest jedną jednostką i istnieje 750 połączeń z usługą, użycie limitu przydziału Połączenie ion wynosi 750/1000 = 0,75. Obciążenie serwera jest obliczane podobnie przy użyciu wartości dla pojemności obliczeniowej. Aby uzyskać więcej informacji, zobacz Automatyczne skalowanie jednostek usługi Azure SignalR Service.

Uwaga

Autoskalowanie jest tylko funkcją warstwy Premium.

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ć szczegółowe instrukcje dotyczące włączania, wykonywania zapytań i rozwiązywania problemów z dziennikami zasobów usługi Azure SignalR Service, zobacz Monitorowanie i rozwiązywanie problemów z dziennikami usługi Azure SignalR Service.
  • Aby uzyskać dostępne kategorie dzienników zasobów, skojarzone z nimi tabele usługi Log Analytics i schematy dzienników dla usługi Azure SignalR Service, zobacz Dokumentacja danych monitorowania usługi Azure SignalR Service.

Kategorie dzienników zasobów

Dzienniki zasobów są grupowane w grupy kategorii. Grupy kategorii to zbiór różnych dzienników, które ułatwiają osiągnięcie różnych celów monitorowania. Usługa Azure SignalR obsługuje dzienniki łączności, dzienniki obsługi komunikatów i dzienniki żądań HTTP.

dzienniki Połączenie ivity

dzienniki Połączenie ivity zawierają szczegółowe informacje dotyczące połączeń centrum SignalR. Na przykład:

  • Podstawowe informacje, takie jak identyfikator użytkownika, identyfikator połączenia i typ transportu
  • Informacje o zdarzeniach, takie jak łączenie, rozłączanie i przerywanie zdarzeń

W związku z tym dziennik łączności jest przydatny do rozwiązywania problemów związanych z połączeniem. Typowe rozwiązywanie problemów związanych z połączeniem można znaleźć w temacie Problemy związane z połączeniem.

Dzienniki obsługi komunikatów

Dzienniki obsługi komunikatów udostępniają informacje o śledzeniu komunikatów centrum SignalR odebranych i wysyłanych za pośrednictwem usługi SignalR, na przykład identyfikator śledzenia i typ komunikatu. Identyfikator śledzenia i typ komunikatu również są rejestrowane na serwerze aplikacji. Zazwyczaj komunikat jest rejestrowany po nadejściu lub opuszczeniu usługi lub serwera. W związku z tym dzienniki obsługi komunikatów są przydatne do rozwiązywania problemów związanych z komunikatami. Aby uzyskać typowe rozwiązywanie problemów związanych z komunikatami, zobacz problemy związane z komunikatami.

Uwaga

Ten typ dziennika jest generowany dla każdego komunikatu. Jeśli komunikaty są często wysyłane, dzienniki obsługi komunikatów mogą mieć wpływ na wydajność usługi SignalR. Można jednak wybrać różne zachowania zbierania, aby zminimalizować wpływ na wydajność. Zobacz dzienniki zasobów dotyczące zbierania zachowań.

Dzienniki żądań HTTP

Dzienniki żądań HTTP zawierają szczegółowe informacje dotyczące żądań HTTP odebranych przez usługę Azure SignalR, na przykład kod stanu i adres URL żądania. Dziennik żądań HTTP jest przydatny do rozwiązywania problemów związanych z żądaniami.

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

Zbieranie zachowań dzienników zasobów

Istnieją dwa typowe scenariusze używania dzienników zasobów, szczególnie w przypadku dzienników obsługi komunikatów.

  • Jakość komunikatów rejestruje, czy wiadomość została wysłana, czy odebrana pomyślnie, albo rejestruje każdy komunikat dostarczany za pośrednictwem usługi SignalR.
  • Opóźnienie komunikatów dzienników wydajności lub śledzi komunikat w kilku połączeniach zamiast wszystkich połączeń.

W związku z tym usługa SignalR udostępnia dwa rodzaje zachowań zbierania:

  • Zbierz wszystkie zebrane dzienniki we wszystkich połączeniach.
  • Zbieranie częściowo zbiera dzienniki w niektórych określonych połączeniach.

Aby uzyskać więcej informacji na temat zbierania zachowań dzienników zasobów i sposobu ich konfigurowania, zobacz Zbieranie zachowań dzienników zasobów.

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.

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.

Na przykład zapytania Kusto dla usługi Azure SignalR Service można znaleźć w temacie Zapytania dotyczące tabeli SignalRServiceDiagnosticLogs.

Uwaga

Nazwy pól zapytań dla miejsc docelowych magazynu różnią się nieco od nazw pól dla usługi Log Analytics. Aby uzyskać szczegółowe informacje na temat mapowań nazw pól między tabelami usługi Storage i Log Analytics, zobacz Mapowanie tabeli dziennika zasobów.

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 Szczegółowe informacje. 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.

Reguły alertów usługi Azure SignalR Service

W poniższej tabeli wymieniono sugerowane reguły alertów dla usługi Azure SignalR Service. Te alerty są tylko przykładami. Alerty można ustawić dla dowolnej metryki, wpisu dziennika lub wpisu dziennika aktywności wymienionego w dokumentacji danych monitorowania usługi Azure SignalR Service.

Typ alertu Warunek opis
Metryki platformy Wykorzystanie limitu przydziału Połączenie ion Zawsze, gdy maksymalne użycie limitu przydziału Połączenie ion jest większe niż próg dynamiczny
Metryki platformy Usuwanie usługi SignalR Za każdym razem, gdy dziennik aktywności ma zdarzenie Category='Administracja istrative', Signal name='Delete SignalR (SignalR)'

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.