Monitorowanie usługi Azure SQL Database przy użyciu metryk i alertów

Dotyczy:Azure SQL Database

Metryki usługi Azure Monitor umożliwiają monitorowanie użycia i kondycji zasobów bazy danych i puli elastycznej. Alerty umożliwiają wysyłanie powiadomień, gdy wartości metryk wskazują potencjalny problem.

Metryki

Metryka jest serią wartości liczbowych mierzonych w regularnych odstępach czasu, często używając jednostek, takich jak count, percent, bytesitp. W zależności od charakteru metryki można użyć agregacji, takich jak total, averagecount, , minimummaximum do obliczania wartości metryk w czasie. Niektóre metryki można podzielić według wymiarów. Każdy wymiar udostępnia dodatkowy kontekst wartości liczbowych.

Przykłady dostępnych metryk usługi Azure SQL Database to: CPU percentage, Data space used, Deadlocks, Tempdb Percent Log Used.

Zobacz Metryki bazy danych i metryki elastycznej puli, aby uzyskać wszystkie dostępne metryki w usłudze Azure SQL Database.

Uwaga

Niektóre metryki dotyczą tylko określonych typów baz danych lub elastycznych pul. Opis każdej metryki wskazuje, czy jest ona ograniczona do określonej bazy danych lub typu puli elastycznej, takich jak rdzenie wirtualne, hiperskala, bezserwerowa itp.

W portalu usługi Azure SQL Database kilka często używanych metryk jest wykresów na karcie Monitorowanie na stronie Przegląd. Dzięki temu można błyskawicznie ocenić użycie zasobów i kondycję bazy danych lub elastycznej puli.

Zrzut ekranu przedstawiający witrynę Azure Portal wykresu metryk pokazanego na stronie Przegląd usługi Azure SQL Database.

W obszarze Kluczowe metryki wybierz pozycję Zobacz wszystkie metryki lub dowolne miejsce na wykresie, aby otworzyć eksploratora metryk. Na stronie Metryki można wyświetlić wszystkie inne dostępne metryki dla zasobu bazy danych lub puli elastycznej. W Eksploratorze metryk można zmienić zakres czasu, stopień szczegółowości i typ agregacji wykresu, zmienić typ wykresu, rozwinąć zakres, aby uwzględnić metryki z innych zasobów platformy Azure, utworzyć reguły alertów itp. Eksplorator metryk można również otworzyć, wybierając pozycję menu Metryki w obszarze Monitorowanie w menu zasobów.

Monitorowanie baz danych i elastycznych pul przy użyciu metryk

Metryki umożliwiają monitorowanie użycia i kondycji zasobów bazy danych i puli elastycznej. Można na przykład:

  • Ustawianie odpowiedniego rozmiaru bazy danych lub elastycznej puli na obciążenie aplikacji
  • Wykrywanie stopniowego wzrostu zużycia zasobów i proaktywne skalowanie w górę bazy danych lub elastycznej puli
  • Wykrywanie i rozwiązywanie problemu z wydajnością

W poniższej tabeli opisano często używane metryki w usłudze Azure SQL Database.

Nazwa metryki Identyfikator metryki opis
Procent użycia procesora CPU cpu_percent Ta metryka pokazuje użycie procesora CPU w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako wartość procentowa. Aby uzyskać więcej informacji, zobacz Użycie zasobów według obciążeń użytkownika i procesów wewnętrznych.
Procent użycia procesora CPU wystąpienia SQL sql_instance_cpu_percent Ta metryka pokazuje całkowite użycie procesora PRZEZ obciążenia użytkownika i systemu wyrażone jako wartość procentowa. Ponieważ ta metryka i metryka procentowa procesora CPU są mierzone na różnych skalach, nie są one bezpośrednio porównywalne ze sobą. Aby uzyskać więcej informacji, zobacz Użycie zasobów według obciążeń użytkownika i procesów wewnętrznych.
Procent operacji we/wy danych physical_data_read_percent Ta metryka pokazuje użycie operacji we/wy pliku danych w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako wartość procentowa. Aby uzyskać więcej informacji, zobacz Zarządzanie we/wy danych.
Procent operacji we/wy dziennika log_write_percent Ta metryka pokazuje użycie przepływności zapisu dziennika transakcji w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako wartość procentowa. Aby uzyskać więcej informacji, zobacz Zarządzanie szybkością dzienników transakcji.
Procent pracowników workers_percent Ta metryka pokazuje zużycie wątków roboczych w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako wartość procentowa.
Procent jednostek DTU dtu_consumption_percent Ta metryka pokazuje użycie jednostek DTU w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako wartość procentowa. Procent jednostek DTU pochodzi z trzech innych metryk: procent procesora CPU, procent operacji we/wy danych i procent operacji we/wy dziennika. W dowolnym momencie procent jednostek DTU odpowiada najwyższej wartości spośród tych trzech metryk.
Używane procesory CPU cpu_used Ta metryka pokazuje użycie procesora CPU w kierunku limitu obciążenia użytkownika bazy danych lub elastycznej puli wyrażonej jako liczba rdzeni wirtualnych. Aby uzyskać więcej informacji, zobacz Diagnozowanie i rozwiązywanie problemów z wysokim użyciem procesora CPU w usłudze Azure SQL Database.
Używane jednostki DTU dtu_used Ta metryka przedstawia liczbę jednostek DTU używanych przez bazę danych lub pulę elastyczną.
Rozliczane użycie procesora CPU aplikacji app_cpu_billed W przypadku baz danych bezserwerowych ta metryka pokazuje ilość zasobów obliczeniowych (procesora CPU i pamięci) rozliczanych w sekundach rdzeni wirtualnych. Aby uzyskać więcej informacji, zobacz Rozliczenia w bezserwerowej warstwie obliczeniowej.
Procent użycia procesora CPU aplikacji app_cpu_percent W przypadku baz danych bezserwerowych ta metryka pokazuje użycie procesora CPU w kierunku maksymalnego limitu rdzeni wirtualnych pakietu aplikacji, wyrażonego jako wartość procentowa. Aby uzyskać więcej informacji, zobacz Monitorowanie w bezserwerowej warstwie obliczeniowej.
Procent pamięci aplikacji app_memory_percent W przypadku baz danych bezserwerowych ta metryka pokazuje zużycie pamięci w kierunku maksymalnego limitu pamięci pakietu aplikacji wyrażonego jako wartość procentowa. Aby uzyskać więcej informacji, zobacz Monitorowanie w bezserwerowej warstwie obliczeniowej.
Liczba sesji sessions_count Ta metryka przedstawia liczbę ustanowionych sesji użytkownika dla bazy danych lub elastycznej puli.
Używane miejsce danych storage W przypadku baz danych ta metryka pokazuje ilość miejsca do magazynowania używanego w plikach danych bazy danych.
Używane miejsce danych storage_used W przypadku pul elastycznych ta metryka przedstawia ilość miejsca do magazynowania używanego w plikach danych wszystkich baz danych w elastycznej puli.
Przydzielone miejsce na dane allocated_data_storage Ta metryka pokazuje ilość miejsca do magazynowania zajmowanego przez pliki danych bazy danych lub pliki danych wszystkich baz danych w elastycznej puli. Pliki danych mogą zawierać puste miejsce. W związku z tym miejsce na dane przydzielone, jeśli jest często wyższe niż miejsce na dane używane dla tej samej bazy danych lub elastycznej puli. Aby uzyskać więcej informacji, zobacz Zarządzanie miejscem na pliki dla baz danych w usłudze Azure SQL Database.
Procent używanego miejsca na danych storage_percent W przypadku baz danych ta metryka pokazuje ilość miejsca do magazynowania używanego w plikach danych bazy danych w kierunku limitu rozmiaru bazy danych. W przypadku elastycznych pul pokazuje ilość miejsca do magazynowania używanego w plikach danych wszystkich baz danych w elastycznej puli, wyrażoną jako wartość procentowa w stosunku do limitu rozmiaru danych elastycznej puli. Limit rozmiaru danych dla bazy danych lub elastycznej puli może być skonfigurowany poniżej maksymalnego limitu rozmiaru danych. Aby znaleźć maksymalny limit rozmiaru danych, zobacz Limity zasobów dla baz danych rdzeni wirtualnych, elastycznych pul rdzeni wirtualnych, baz danych JEDNOSTEK DTU i elastycznych pul jednostek DTU.
Przydzielony procent miejsca na dane allocated_data_storage_percent W przypadku pul elastycznych ta metryka pokazuje ilość miejsca do magazynowania zajmowanego przez pliki danych wszystkich baz danych w elastycznej puli w kierunku limitu rozmiaru danych puli, wyrażonego jako wartość procentowa.
Używany dziennik procentu bazy danych Tempdb tempdb_log_used_percent Ta metryka pokazuje zużycie miejsca dziennika transakcji w tempdb bazie danych w kierunku maksymalnego rozmiaru dziennika wyrażonego jako wartość procentowa. Aby uzyskać więcej informacji, zobacz tempdb w usłudze Azure SQL Database.
Pomyślne Połączenie ions connection_successful Ta metryka pokazuje liczbę pomyślnie nawiązanych połączeń z bazą danych. Ta metryka może być podzielona przez dwa wymiary i SslProtocolValidatedDriverNameAndVersion, aby wyświetlić liczbę połączeń przy użyciu określonej wersji protokołu szyfrowania lub użyć określonego sterownika klienta.
Błędy Połączenie: Błędy systemowe connection_failed Ta metryka pokazuje liczbę prób nawiązania połączenia z bazą danych, która nie powiodła się z powodu błędów usługi wewnętrznej. Najczęściej takie błędy są przejściowe. Ta metryka może być podzielona przez dwa wymiary i ErrorValidatedDriverNameAndVersion, aby wyświetlić liczbę nieudanych prób połączenia z powodu określonego błędu lub z określonego sterownika klienta.
Błędy Połączenie: błędy użytkownika connection_failed_user_error Ta metryka pokazuje liczbę prób nawiązania połączenia z bazą danych, która nie powiodła się z powodu błędów możliwych do naprawienia przez użytkownika, takich jak nieprawidłowe hasło lub połączenie zablokowane przez zaporę. Ta metryka może być podzielona przez dwa wymiary i ErrorValidatedDriverNameAndVersion, aby wyświetlić liczbę nieudanych prób połączenia z powodu określonego błędu lub z określonego sterownika klienta.
Zakleszczenia deadlock Ta metryka pokazuje liczbę zakleszczeń w bazie danych.

Alerty

Możesz utworzyć reguły alertów, aby powiadomić Cię, że wartość jednej metryki lub wielu metryk znajduje się poza oczekiwanym zakresem.

Zakres reguły alertu można ustawić na wiele sposobów, aby odpowiadał twoim potrzebom. Na przykład zakres reguły alertu można ustawić na:

  • Pojedyncza baza danych
  • Elastyczna pula
  • Wszystkie bazy danych lub elastyczne pule w grupie zasobów
  • Wszystkie bazy danych lub elastyczne pule w subskrypcji w regionie świadczenia usługi Azure
  • Wszystkie bazy danych lub elastyczne pule w subskrypcji we wszystkich regionach

Reguły alertów okresowo oceniają zagregowane wartości metryk w okresie wyszukiwania, porównując je z wartością progową. Możesz skonfigurować wartość progową, częstotliwość oceny i okres wyszukiwania.

Jeśli zostanie wyzwolona reguła alertu, otrzymasz powiadomienie zgodnie z preferencjami powiadomień określonymi w grupie akcji połączonej z regułą alertu. Możesz na przykład otrzymać wiadomość e-mail, wiadomość SMS lub powiadomienie głosowe. Reguła alertu może również wyzwalać akcje, takie jak elementy webhook, elementy Runbook automatyzacji, funkcje, aplikacje logiki itp. Alerty można zintegrować z obsługiwanymi produktami do zarządzania usługami IT.

Aby dowiedzieć się więcej na temat alertów usługi Azure Monitor, zobacz Omówienie alertów usługi Azure Monitor. Aby zapoznać się z alertami metryk, zapoznaj się z tematem Alerty metryk, Zarządzanie regułami alertów i grupami akcji.

Metryki i optymalne progi używane w regułach alertów różnią się w szerokim spektrum obciążeń klientów w usłudze Azure SQL Database.

Zalecane alerty w poniższej tabeli stanowią punkt wyjścia, który ułatwia zdefiniowanie optymalnej konfiguracji alertów dla zasobów usługi Azure SQL Database. W zależności od wymagań konfiguracja może się różnić od tego przykładu. Możesz użyć różnych progów, częstotliwości oceny lub okresów wyszukiwania. Możesz utworzyć dodatkowe alerty lub użyć różnych konfiguracji reguł alertów dla różnych aplikacji i środowisk.

Oto przykłady typowych konfiguracji reguł alertów.

Nazwa reguły alertu Metryka (sygnał) Logika alertu Kiedy należy ocenić Sugerowana ważność
Wysokie użycie procesora CPU przez użytkownika Procent użycia procesora CPU Próg: Agregacja: Static

AverageOperator: Greater than
Wartość progowa:90
Sprawdź co: 1 minute
okres wyszukiwania: 10 minutes
2 — Ostrzeżenie
Wysokie całkowite użycie procesora CPU Procent użycia procesora CPU wystąpienia SQL Próg: Agregacja: Static

AverageOperator: Greater than
Wartość progowa:90
Sprawdź co: 1 minute
okres wyszukiwania: 10 minutes
2 — Ostrzeżenie
Wysokie użycie procesów roboczych Procent pracowników Próg: Agregacja: Static

MinimumOperator: Greater than
Wartość progowa:60
Sprawdź co: 1 minute
okres wyszukiwania: 5 minutes
1 — Błąd
Wysokie użycie operacji we/wy danych Procent operacji we/wy danych Próg: Agregacja: Static

AverageOperator: Greater than
Wartość progowa:90
Sprawdź co: 1 minute
okres wyszukiwania: 15 minutes
3 — Informacyjny
Mała ilość miejsca na dane Procent używanego miejsca na danych Próg: Agregacja: Static

MinimumOperator: Greater than
Wartość progowa:95
Sprawdź co: 15 minute
okres wyszukiwania: 15 minutes
1 — Błąd
Mała tempdb ilość miejsca w dzienniku Używany dziennik procentu bazy danych Tempdb Próg: Agregacja: Static

MinimumOperator: Greater than
Wartość progowa:60
Sprawdź co: 1 minute
okres wyszukiwania: 5 minutes
1 — Błąd
Zakleszczenia Zakleszczenia Próg: Agregacja: Dynamic

TotalOperator: Greater than
Czułość progowa:Medium
Sprawdź co: 15 minutes
okres wyszukiwania: 1 hour
3 — Informacyjny
Nieudane połączenia (błędy użytkownika) Błędy Połączenie: błędy użytkownika Próg: Agregacja: Dynamic

TotalOperator: Greater than
Czułość progowa:Medium
Sprawdź co: 5 minutes
okres wyszukiwania: 15 minutes
2 — Ostrzeżenie
Nieudane połączenia (błędy systemowe) Błędy Połączenie: Błędy systemowe Próg: Agregacja: Static

TotalOperator: Jednostka: Greater than
Count
Wartość progowa:10
Sprawdź co: 1 minute
okres wyszukiwania: 5 minutes
2 — Ostrzeżenie
Nietypowa szybkość połączenia Pomyślne Połączenie ions Próg: Agregacja: Dynamic

TotalOperator: Greater or Less than
Czułość progowa:Low
Sprawdź co: 5 minutes
okres wyszukiwania: 15 minutes
2 — Ostrzeżenie

Niektóre z zalecanych reguł alertów używają progów dynamicznych do wykrywania nietypowych wzorców metryk, które mogą wymagać uwagi. Reguły alertów oparte na progach dynamicznych nie są wyzwalane do momentu zebrania wystarczających danych historycznych w celu ustanowienia normalnych wzorców. Aby uzyskać więcej informacji, zobacz Dynamiczne progi w alertach dotyczących metryk.

Domyślnie alerty metryk są stanowe. Oznacza to, że po wyzwoleniu reguły alertu alert zostanie wyzwolony tylko raz. Alert pozostaje w fired stanie, dopóki nie zostanie rozwiązany, w którym momencie resolved zostanie wysłane powiadomienie. Reguła alertu wyzwala nowy alert tylko po rozwiązaniu poprzedniego alertu. Alerty stanowe unikają częstych powiadomień o trwającym stanie. Aby uzyskać więcej informacji na temat alertów stanowych i bezstanowych, zobacz Alerty i stan.