| Termin | Definicja |
|---|---|
| Monitoring Agent SQL Server | Agent monitorujący SQL Server to komponent zbierający dane o wydajności i dostępności instancji dla systemu nadzoru. Rola agenta monitorującego instancję SQL ServerMonitoring Agent SQL Server jest komponentem nadzorującym działanie instancji Microsoft SQL Server. Jego zadaniem jest okresowe zbieranie informacji o dostępności usługi, stanie połączeń oraz wykorzystaniu zasobów, a następnie przekazywanie tych danych do systemu monitoringu. Agent nie jest samą bazą danych ani silnikiem wykonującym zapytania. Działa jako warstwa obserwacyjna, która umożliwia wykrywanie zmian w pracy serwera bez ręcznego sprawdzania każdego parametru. Zakres pomiarów zależy od konkretnego narzędzia monitorującego i jego konfiguracji, ale typowy agent może kontrolować możliwość połączenia z instancją, czas odpowiedzi na zapytanie testowe, stan baz danych oraz obecność błędów raportowanych przez SQL Server. Dane są zwykle zapisywane wraz ze znacznikiem czasu, dzięki czemu można rozróżnić chwilową niedostępność od dłuższej awarii i analizować historię obciążenia. Jakie dane może zbierać Monitoring Agent SQL ServerPodstawowym testem jest sprawdzenie, czy usługa SQL Server działa i czy agent może nawiązać uwierzytelnione połączenie z właściwą instancją. Sam fakt, że proces usługi jest uruchomiony, nie potwierdza jeszcze poprawnej pracy bazy. Instancja może odpowiadać z opóźnieniem, odrzucać połączenia albo mieć problem tylko z wybraną bazą. Dlatego monitoring dostępności często łączy kontrolę połączenia z prostym zapytaniem diagnostycznym oraz pomiarem czasu odpowiedzi. Monitoring może również obejmować liczbę aktywnych sesji, czas trwania zapytań, blokady oraz oczekiwania na zasoby. Blokada występuje wtedy, gdy jedna transakcja uniemożliwia innej sesji uzyskanie potrzebnej blokady. Oczekiwanie może natomiast wynikać między innymi z operacji wejścia-wyjścia, synchronizacji lub braku dostępnego zasobu. Takie dane nie wskazują automatycznie jednej przyczyny problemu, ale pozwalają powiązać spadek wydajności z konkretnym typem obciążenia. Interpretacja alarmów i historii pomiarówAlarm generowany przez agenta powinien być oceniany w kontekście czasu, częstotliwości i zakresu zjawiska. Pojedynczy nieudany test może wynikać z krótkiej przerwy w komunikacji, restartu usługi albo chwilowego przeciążenia. Powtarzające się nieudane połączenia, rosnący czas odpowiedzi i jednoczesne błędy w dzienniku SQL Server tworzą znacznie mocniejszy sygnał rzeczywistej niedostępności lub degradacji działania. Ważne jest odróżnienie alarmu o dostępności od alarmu o wydajności. Instancja może być dostępna, lecz wykonywać zapytania z dużym opóźnieniem. Możliwa jest także sytuacja odwrotna: test połączenia przechodzi poprawnie, ale jedna baza ma stan ograniczający dostęp aplikacji albo występuje problem z określonym zasobem. Przy analizie należy sprawdzić nazwę instancji, bazę, konto używane przez agenta, czas wystąpienia zdarzenia oraz to, czy alarm dotyczy jednego hosta, czy większej liczby systemów. Znaczenie konfiguracji dla wiarygodności monitoringuNieprawidłowo skonfigurowany Monitoring Agent SQL Server może generować zarówno fałszywe alarmy, jak i pozornie poprawne wyniki. Znaczenie ma adres serwera, nazwa instancji, port, metoda uwierzytelniania oraz uprawnienia konta używanego do odczytu danych. Konto powinno mieć zakres uprawnień wystarczający do wykonania zaplanowanych kontroli, a brak dostępu do określonych widoków lub liczników trzeba rozróżnić od awarii samej instancji. Podczas diagnostyki komputera, na którym działa narzędzie monitorujące, sprawdza się między innymi działanie usługi agenta, poprawność jej parametrów startowych, dostępność sieciową SQL Server oraz zapisy lokalnego dziennika. Należy także porównać czas systemowy hosta z czasem serwera bazodanowego, ponieważ rozbieżności utrudniają korelację zdarzeń. Jeżeli monitoring przestał zbierać dane po zmianie hasła, aktualizacji silnika lub zmianie reguł zapory, przyczyną może być konfiguracja połączenia, a nie uszkodzenie danych użytkownika. |