Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

SQL Server Agent – alerty

Termin Definicja
SQL Server Agent – alerty

Alerty SQL Server Agent powiadamiają administratora o wystąpieniu określonych błędów lub warunków wydajnościowych.

Jak SQL Server Agent rozpoznaje warunek alarmowy

SQL Server Agent w Microsoft SQL Server obsługuje alerty jako reguły reagowania na określone zdarzenia. Alert może być związany z błędem zapisanym przez aparat SQL Server w dzienniku aplikacji systemu Windows, z konkretnym numerem błędu albo z poziomem ważności komunikatu. Można również ograniczyć działanie reguły do wskazanej bazy danych. Dzięki temu administrator nie musi analizować wszystkich wpisów w dzienniku, lecz może zdefiniować reakcję na zdarzenia istotne dla konkretnej instancji lub konkretnej bazy.

Drugą grupę stanowią alerty wydajnościowe. SQL Server Agent może obserwować wybrane liczniki i właściwości wydajnościowe SQL Server, a następnie uruchomić reakcję po przekroczeniu ustalonego warunku. Przykładem jest zbyt wysoki czas oczekiwania, nadmierne wykorzystanie określonego zasobu albo przekroczenie wartości związanej z aktywnością instancji. Warunek powinien być dobrany do rzeczywistego sposobu pracy systemu, ponieważ stałe alarmowanie przy normalnych, krótkotrwałych skokach obciążenia prowadzi do powstawania nadmiarowych powiadomień.

Rodzaje alertów i ich zakres działania

Alerty zdarzeń SQL Server mogą reagować na poziom ważności błędu lub na jego numer. Alert oparty wyłącznie na poziomie ważności obejmuje szerszy zbiór komunikatów, natomiast reguła przypisana do numeru błędu jest bardziej precyzyjna. W praktyce warto rozróżnić błędy wymagające natychmiastowej reakcji od komunikatów informacyjnych i ostrzeżeń, które mogą być jedynie rejestrowane. Jeżeli alert zostanie skonfigurowany zbyt szeroko, pojedynczy problem może wywoływać wiele podobnych powiadomień.

SQL Server Agent obsługuje także alerty oparte na zdarzeniach WMI, czyli mechanizmie Windows Management Instrumentation. Taki alert może reagować na zdarzenia udostępniane przez dostawcę WMI, zgodnie z zakresem i składnią obsługiwaną przez daną konfigurację SQL Server. Należy odróżnić sam alert od zadania SQL Server Agent. Alert opisuje warunek, natomiast zadanie określa czynność wykonywaną po jego wystąpieniu, na przykład uruchomienie procedury, wykonanie polecenia systemowego lub rozpoczęcie wcześniej zdefiniowanego procesu administracyjnego.

Powiadomienia, operatorzy i reakcje automatyczne

Po wystąpieniu alertu SQL Server Agent może uruchomić zadanie oraz powiadomić operatora. Operator jest obiektem konfiguracyjnym SQL Server Agent przechowywanym wraz z ustawieniami zadań i alertów. Powiadomienie może być wysłane pocztą elektroniczną, jeżeli skonfigurowano odpowiednią obsługę poczty dla SQL Server Agent, w tym profil Database Mail i dane operatora. Samo utworzenie alertu nie gwarantuje dostarczenia wiadomości. Trzeba jeszcze sprawdzić, czy Agent działa, profil pocztowy jest dostępny, a operator ma poprawny adres oraz przypisane powiadomienia.

Alert może również uruchomić zadanie automatycznie, ale taka reakcja wymaga ostrożnego projektu. Zadanie powinno mieć jasno określony zakres, warunki wykonania i sposób rejestrowania wyniku. W konfiguracjach wykorzystujących tokeny SQL Server Agent należy uwzględnić zasady bezpieczeństwa tokenów oraz poprawne włączenie obsługi zastępowania tokenów. W przeciwnym razie zadanie może nie uruchomić się zgodnie z oczekiwaniem albo może przekazywać do polecenia nieprawidłowe wartości. Istotne jest także ustawienie opcji opóźnienia i częstotliwości powiadomień, aby jeden powtarzający się błąd nie generował niekontrolowanej liczby wiadomości.

Weryfikacja konfiguracji alertu SQL Server Agent

Podczas sprawdzania problemu z alertem należy najpierw potwierdzić, że usługa SQL Server Agent jest uruchomiona dla właściwej instancji SQL Server. Następnie trzeba zweryfikować definicję alertu, jego typ, numer błędu lub poziom ważności, przypisanie do bazy danych oraz powiązane zadanie i operatora. Konfiguracja alertów jest przechowywana w bazie systemowej msdb, dlatego uszkodzenia, niespójności lub ograniczenia dostępu do tej bazy mogą wpływać na działanie mechanizmu. Pomocne jest porównanie czasu wystąpienia zdarzenia z historią SQL Server Agent i z dziennikiem aparatu SQL Server.

Jeżeli alert został wyzwolony, lecz nie dotarło powiadomienie, należy rozdzielić trzy etapy: rozpoznanie zdarzenia, wykonanie reakcji oraz dostarczenie wiadomości. Każdy z nich może mieć osobną przyczynę problemu. Błędny numer komunikatu lub niedopasowany poziom ważności uniemożliwi rozpoznanie zdarzenia. Nieaktywne albo niepoprawnie skonfigurowane zadanie zablokuje reakcję automatyczną. Z kolei brak profilu Database Mail, błędny operator lub problem z wysyłką poczty może zatrzymać samo powiadomienie, mimo że alert został prawidłowo zarejestrowany.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę