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

sys.server_event_session_targets

Termin Definicja
sys.server_event_session_targets

sys.server_event_session_targets zwraca cele skonfigurowane dla sesji Extended Events na poziomie serwera.

Rola widoku sys.server_event_session_targets w SQL Server

sys.server_event_session_targets jest katalogowym widokiem systemowym silnika Microsoft SQL Server. Zwraca informacje o celach przypisanych do sesji Extended Events działających na poziomie całej instancji serwera. Wiersz widoku opisuje konfigurację jednego celu, dlatego jedna sesja może mieć kilka wierszy, jeżeli zapisuje te same zdarzenia jednocześnie na przykład do pliku i do bufora pierścieniowego.

Widok nie przedstawia pełnej historii zdarzeń przechwyconych przez sesję. Służy do sprawdzenia, jakie cele zostały skonfigurowane oraz jakie parametry przekazano do tych celów. Najważniejsze informacje obejmują identyfikator sesji event_session_id, nazwę celu target_name, identyfikator pakietu celu target_package_guid oraz dane konfiguracyjne zapisane w kolumnie target_data. Powiązanie z sys.server_event_sessions pozwala zastąpić identyfikator sesji jej czytelną nazwą.

Jak odczytywać konfigurację celu Extended Events

Wartość target_name wskazuje typ celu używanego przez sesję. W SQL Server spotykane są między innymi cele package0.event_file i package0.ring_buffer. Cel event_file zapisuje przechwycone zdarzenia do pliku, który można później analizować, natomiast ring_buffer przechowuje dane w pamięci i udostępnia ograniczony, cyklicznie nadpisywany zbiór zdarzeń. Nazwa celu zawiera nazwę pakietu, ponieważ Extended Events korzysta z pakietów dostarczających zdarzenia, akcji i cele.

target_data zawiera parametry właściwe dla danego celu, zwykle w postaci tekstu XML. Dla celu plikowego można w tej konfiguracji znaleźć między innymi nazwę pliku oraz ustawienia dotyczące rozmiaru pliku i liczby plików przechowywanych w ramach rotacji. Dla celu bufora pierścieniowego istotne są ustawienia wpływające na ilość danych utrzymywanych w pamięci. Sam odczyt target_data pokazuje konfigurację, ale nie zastępuje odczytu zawartości plików ani bieżących danych z bufora.

Praktyczne zapytania i interpretacja wyników

Podstawowe sprawdzenie celów wszystkich serwerowych sesji Extended Events można wykonać zapytaniem:

SELECT s.name AS session_name, t.target_name, t.target_package_guid, t.target_data FROM sys.server_event_sessions AS s INNER JOIN sys.server_event_session_targets AS t ON s.event_session_id = t.event_session_id;

Wynik należy interpretować razem ze stanem sesji oraz jej definicją zdarzeń. Informacja o celu bez sprawdzenia konfiguracji sesji nie mówi, jakie zdarzenia są faktycznie zapisywane. Jeżeli dla jednej sesji występuje kilka celów, każdy z nich może mieć inną konfigurację. W przypadku celu plikowego należy zweryfikować, czy ścieżka jest poprawna dla systemu Windows uruchamiającego usługę SQL Server, czy katalog istnieje i czy konto usługi ma możliwość zapisu. Sam fakt obecności wiersza w widoku nie potwierdza, że plik jest tworzony ani że zapis przebiega bez błędów.

Znaczenie widoku przy diagnostyce instancji SQL Server

Nieprawidłowa konfiguracja celu może utrudnić analizę problemów z wydajnością, blokadami, błędami zapytań albo zdarzeniami bezpieczeństwa rejestrowanymi przez Extended Events. Typowym przykładem jest wskazanie nieistniejącej lokalizacji dla event_file, zbyt mały limit danych w buforze albo konfiguracja prowadząca do szybkiego nadpisywania starszych informacji. Przy porównywaniu środowisk warto zestawić nazwę sesji, typ celu i pełną wartość target_data, ponieważ dwa cele o tej samej nazwie mogą mieć różne parametry.

Widok jest także użyteczny podczas przeglądu zmian wykonanych poleceniami CREATE EVENT SESSION i ALTER EVENT SESSION. Pozwala potwierdzić, czy deklarowany cel znajduje się w katalogu instancji oraz czy przypisano go do właściwej sesji. Gdy potrzebne są same dane zarejestrowane przez cel, należy użyć narzędzi przeznaczonych dla jego typu, na przykład odczytu plików zdarzeń dla event_file albo interfejsu graficznego SQL Server Management Studio do podglądu aktywnej sesji. sys.server_event_session_targets pozostaje punktem kontroli konfiguracji, a nie magazynem wyników diagnostycznych.

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