Udostępnij za pośrednictwem


SQL Server Extended Events Packages

Pakiet to kontener SQL Server Rozszerzone obiekty zdarzenia. Istnieją trzy rodzaje pakietów Extended zdarzenia, które mogą być następujące:

  • package0 - rozszerzony zdarzenia obiektów systemu.Jest to domyślne pakiet.

  • SQLServer- SQL Server obiekty powiązane.

  • sqlos- SQL Server System operacyjny (SQLOS) dotyczące obiektów.

Pakiety są identyfikowane przez nazwę, identyfikator GUID i binarne moduł, który zawiera pakiet.Aby uzyskać więcej informacji zobaczsys.dm_xe_packages (Transact-SQL).

Pakiet może zawierać niektóre lub wszystkie z następujących obiektów, które zostały omówione szczegółowo w dalszej części tego tematu:

  • Zdarzenia

  • Elementy docelowe

  • Actions

  • Typy

  • Predykaty

  • Mapy

Podczas sesja zdarzenie mogą być wymieszane obiekty pochodzące z różnych pakietów.Aby uzyskać więcej informacji zobaczSQL Server Extended Events Sessions.

Zawartość pakiet

Na następującej ilustracji pokazano obiekty, które mogą znajdować się w pakiety, które są zawarte w module.Moduł może być plik wykonywalny lub biblioteki dołączanej dynamicznie.

The relationship of a module, packages, and object

Zdarzenia

Zdarzenia monitorowanego punktów zainteresowanie ścieżka wykonywania programu, takich jak SQL Server. Wypalania zdarzenie przenosi się z nim fakt, że punkt odsetek został osiągnięty i podać informacje w momencie zdarzenie był uruchamiany.

Zdarzenia mogą być używane wyłącznie do celów śledzenia lub wyzwolenie akcji.Działania te mogą być synchroniczna lub asynchroniczna.

Uwaga

Zdarzenie nie ma żadnych wiedzę na temat czynności, które mogą być wywoływane w odpowiedzi na zdarzenie wyzwalania.

Zestaw zdarzeń występujących w pakiecie, nie można zmienić po pakiet jest zarejestrowana w rozszerzonym zdarzenia.

Wszystkie zdarzenia mają wersji schematu, określające ich zawartość.Ten schemat składa się z zdarzenie kolumn o typach dobrze zdefiniowany.zdarzenie określonego typu musi zawsze podać swoje dane w dokładnie takiej samej kolejności, którą określono w schemacie.miejsce docelowe zdarzenie nie ma jednak wykorzystać wszystkie dane, które jest dostępne.

Kategorii zdarzeń

Rozszerzone zdarzenia stosują model kategoryzacji zdarzenie podobne do zdarzenia śledzenia dla systemu Windows (ETW).Dwie właściwości zdarzenie są używane do kategoryzacji, kanał i słowo kluczowe.Korzystanie z tych właściwości obsługuje integrację Extended zdarzenia ETW i jej narzędzi.

Channel

Kanał identyfikuje odbiorców dla każdego zdarzenie.Te kanały są opisane w poniższej tabela.

Termin

Definicja

Administrator

Zdarzenia administracyjne są przeznaczone przede wszystkim użytkownikom końcowym, Administratorzy i pomocy technicznej.Zdarzenia, które można znaleźć w kanałach administratora wskazywać na problem z dobrze zdefiniowane rozwiązanie, które administrator może działać.Przykładem zdarzenie administracyjnego jest, gdy aplikacja nie może połączyć się z drukarką.Zdarzenia te mogą mieć dobrze udokumentowanych lub mają skojarzonych z nimi komunikat informuje czytelnika, co należy zrobić, aby rozwiązać problem.

Operacyjne

Zdarzenia operacyjne służą do analizowania i diagnozowania problemu lub jego wystąpienia.Ich może służyć do wyzwalania narzędzi lub na podstawie problemu lub wystąpienia zadania.Przykładem zdarzenie operacyjnego jest, gdy drukarka jest dodane lub usunięte z systemu.

Analityczne

Zdarzenia analityczne są publikowane w dużych ilościach.Te opisują z programu i są zazwyczaj używane w badaniach wydajności.

Program Debug

Debugowanie zdarzeń są używane wyłącznie przez deweloperów do diagnozowania problemu dla debugowania.

Słowo kluczowe

Słowo kluczowe jest specyficzne dla aplikacji i pozwala lepiej przetwarzaniu zgrupowanie powiązanych zdarzeniach, co ułatwi określenie i pobrać zdarzenie, które mają być używane w sesja.Następująca kwerenda umożliwia uzyskanie informacji słowa kluczowego.

select map_value Keyword from sys.dm_xe_map_values
where name = 'keyword_map'

Uwaga

Mapa słowa kluczowe do bieżącego grupowanie zdarzeń śledzenia SQL.

Elementy docelowe

Elementy docelowe są odbiorców zdarzeń.Elementy docelowe przetworzyć zdarzenie, synchronicznie na wątek, który uruchomieniu zdarzenie albo asynchronicznie w wątek, pod warunkiem że system.Zazwyczaj Przetwarzanie synchroniczne służy porządkowanie określonych danych muszą być zachowane.Rozszerzone zdarzenie zawiera kilka elementów docelowych, których można używać odpowiednio do kierowania danych wyjściowych zdarzenie.Aby uzyskać więcej informacji zobaczSQL Server Extended Events Targets.

Actions

Akcja jest programistyczny odpowiedzi lub seria odpowiedzi na zdarzenie.Akcje są powiązane z zdarzenie, a każde zdarzenie może mieć unikatowy zestaw akcji.

Uwaga

Akcje, które są przeznaczone do określonego zestaw zdarzeń nie można powiązać z nieznanym zdarzenia.

Działanie związane ze zdarzeniami jest wywoływana synchronicznie na wątek, który uruchomił nieobsługiwane zdarzenie.Istnieje wiele typów działań i mają szeroką gamę możliwości.Akcje mogą wykonywać następujące czynności:

  • Przechwytywanie automatyczna kopia zapasowa stosu i sprawdzenie danych.

  • W kontekście lokalnego przy użyciu zmiennej magazynowania są przechowywane informacje o stanie.

  • Agregowanie danych zdarzenie.

  • Dołącz dane do dane zdarzenie.

Przykłady typowych i dobrze znanych akcje są następujące:

  • Dumper stosu

  • (Wykrywanie plan wykonaniaSQL Server tylko)

  • Transact-SQL stos (kolekcjaSQL Server tylko)

  • Obliczanie statystyk czas uruchamiania

  • Zbieranie danych wprowadzanych przez użytkownika na wyjątku

Predykaty

Predykaty są zestaw reguł logicznych, które są używane do analizowania zdarzenia, gdy są one przetwarzane.To umożliwia użytkownikowi Extended zdarzenie selektywnie przechwytywania danych zdarzenie na podstawie określonych kryteriów.

Predykaty mogą przechowywać dane w kontekście lokalnego, które mogą być używane do tworzenia predykatów, który zwraca wartość true raz co n minut lub co n razy uruchomieniu zdarzenie.Ten magazyn lokalny kontekst można również dynamiczne aktualizowanie predykacie, w związku z tym pomijanie wyzwalania zdarzenie przyszłych Jeśli zdarzenie zawiera podobne dane.

Predykaty mają możliwość pobierania informacji kontekstu, takie jak ID wątek, a także szczegółowe dane zdarzenie.Predykaty są obliczane jako wyrażenie boolowskie pełne i obsługuje krótkie circuiting w pierwszym punkcie, gdzie okaże się fałszywy całego wyrażenie.

Uwaga

Nie mogą być oceniane predykatów z efektami, jeśli wcześniej sprawdzeniem predykatu nie powiedzie się.

Typy

Ponieważ danych jest zbiorem bajtów obsadzone ze sobą, długość i właściwości kolekcja bajt są wymagane w celu interpretowania danych.Informacje te są hermetyzowane w obiekt tekstowy.W przypadku obiektów pakiet dostępne są następujące typy:

  • zdarzenie

  • Akcja

  • miejsce docelowe

  • pred_source

  • pred_compare

  • Typ

Aby uzyskać więcej informacji zobaczsys.dm_xe_objects (Transact-SQL).

Mapy

Tabela mapowania mapuje wartość wewnętrznego ciąg, który umożliwia użytkownikowi wiedzieć, co reprezentuje wartość.Zamiast tylko możliwość uzyskania wartości liczbowe, użytkownik może uzyskać zrozumiały opis wartości wewnętrzne.Następująca kwerenda pokazuje sposób uzyskiwania wartości mapy.

select map_key, map_value from sys.dm_xe_map_values
where name = 'lock_mode'

Powyższa kwerenda daje następujące dane wyjściowe.

map_key map_value

---------------------

0 NL

1 SCH_S

2 SCH_M

3 S

4 U

5 X

6 JEST

7 J.M.

8 IX

9 SIU

10-6

11 UIX

12 BU

13 RS_S

14 RS_U

15 RI_NL

16 RI_S

17 RI_U

18 RI_X

19 RX_S

20 RX_U

21 RX_X

21 RX_X

Za pomocą tej tabela, na przykład, załóżmy, że istnieje kolumna o nazwie trybu, a jego wartość wynosi 5.W tabela wskazuje, że mapuje 5 X, co oznacza, z wyłączeniem jest typu blokada.