| Termin | Definicja |
|---|---|
| sys.dm_xe_session_event_actions | sys.dm_xe_session_event_actions zwraca akcje przypisane do zdarzeń w aktywnej sesji Extended Events. Rola widoku sys.dm_xe_session_event_actions w SQL Server
Akcja w Extended Events jest dodatkową operacją wykonywaną w momencie wystąpienia zdarzenia. Zdarzenie dostarcza podstawowe informacje o sytuacji, na przykład o wykonaniu instrukcji lub zmianie stanu, natomiast akcja może uzupełnić przechwycony rekord o dodatkowe dane. W zależności od konkretnego zdarzenia i dostępnego pakietu akcji może to być między innymi identyfikator sesji, identyfikator bazy danych, nazwa użytkownika albo tekst instrukcji. Przypisanie akcji nie oznacza, że sama akcja wywołuje zdarzenie; określa jedynie informacje zbierane razem z tym zdarzeniem. Jakie informacje można odczytaćWynik widoku zawiera identyfikator adresowy sesji zdarzeń oraz dane identyfikujące zdarzenie i akcję. Do rozpoznania elementów konfiguracji służą między innymi nazwy, identyfikatory oraz identyfikatory GUID pakietów, w których zdefiniowano zdarzenie i akcję. Nazwa akcji wskazuje konkretny element dołączony do zdarzenia, a nazwa zdarzenia pozwala ustalić, przy jakim typie aktywności akcja zostanie wykonana. Identyfikator Przykładowe zapytanie diagnostyczne może wyglądać następująco:
Takie zapytanie pokazuje, które akcje są rzeczywiście podpięte do zdarzeń w sesjach aktywnych w chwili wykonania polecenia. Jeżeli sesja nie działa, jej konfiguracja nie będzie dostępna w tym widoku DMV. Definicję sesji zapisaną w metadanych serwera można analizować osobno przez katalogowe widoki Extended Events, w szczególności Znaczenie akcji dla diagnostyki i wydajnościOdczyt Akcje są wykonywane przy obsłudze wystąpień zdarzeń, dlatego ich liczba i rodzaj mogą wpływać na koszt przechwytywania. Dodanie akcji dostarczającej obszerne informacje, takiej jak pełny tekst instrukcji, może zwiększyć ilość danych zapisywanych przez sesję. Z tego powodu konfigurację należy oceniać razem z częstotliwością zdarzeń, predykatami filtrującymi oraz typem celu sesji. Sam widok W praktyce warto porównać listę akcji z celem diagnostycznym sesji. Jeśli celem jest ustalenie, która sesja wykonuje daną instrukcję, potrzebna jest akcja dostarczająca identyfikator sesji. Jeśli analiza dotyczy konkretnej bazy, przydatna może być akcja z identyfikatorem bazy danych, o ile jest dostępna dla danego zdarzenia i wersji SQL Server. Nie wolno zakładać, że każda akcja może zostać przypisana do każdego zdarzenia. Zgodność akcji ze zdarzeniem wynika z modelu Extended Events oraz definicji pakietów używanych przez daną instalację SQL Server. Kontrola konfiguracji aktywnej sesjiPodczas diagnostyki należy najpierw ustalić nazwę i stan sesji w Widok jest przeznaczony do odczytu stanu silnika i nie zmienia konfiguracji sesji. Do modyfikowania sesji Extended Events używa się instrukcji Przy serwisowej analizie komputera, na którym działa SQL Server, warto rozdzielić problem konfiguracji Extended Events od problemu sprzętowego. Błędne lub niepełne dane w sesji mogą wynikać z ustawień zdarzeń i akcji, natomiast spadki wydajności, błędy pamięci masowej albo niestabilność systemu wymagają odrębnej diagnostyki laptopa, komputera PC i jego podzespołów. |