Freigeben über


Blocked Process Report-Ereignisklasse

Die Blocked Process Report-Ereignisklasse zeigt an, dass ein Task länger als die angegebene Zeitspanne blockiert wurde. Diese Ereignisklasse schließt keine Systemtasks oder Tasks ein, die auf Ressourcen warten, für die keine Deadlocks erkannt werden können.

Sie können den Schwellenwert und die Häufigkeit der Berichtgenerierung mit dem Befehl sp_configure konfigurieren, indem Sie die Option Schwellenwert für blockierte Prozesse (in Sekunden) festlegen. Standardmäßig werden für blockierte Prozesse keine Berichte erstellt. Informationen zum Festlegen der Option Schwellenwert für blockierte Prozesse finden Sie unter Schwellenwert für blockierte Prozesse (Serverkonfigurationsoption).

Informationen zum Filtern der von der Blocked Process Report-Ereignisklasse zurückgegebenen Daten finden Sie unter Filtern von Ereignissen in einer Ablaufverfolgung (SQL Server Profiler), Festlegen eines Ablaufverfolgungsfilters (Transact-SQL) oder sp_trace_setfilter (Transact-SQL).

Blocked Process Report (Ereignisklassen-Datenspalten)

Datenspaltenname

Datentyp

Beschreibung

Spalten-ID

Filterbar

DatabaseID

int

Die ID der Datenbank, in der die Sperre eingerichtet wurde. SQL Server Profiler zeigt den Namen der Datenbank an, wenn die ServerName-Datenspalte in der Ablaufverfolgung aufgezeichnet wird und der Server verfügbar ist. Der Wert für eine Datenbank kann mithilfe der DB_ID-Funktion ermittelt werden.

3

Ja

Duration

bigint

Die Zeitdauer (in Millisekunden), für die der Prozess blockiert wurde.

13

Ja

EndTime

datetime

Der Zeitpunkt, zu dem das Ereignis beendet wurde. Diese Spalte wird für Startereignisklassen, wie z. B. SQL:BatchStarting oder SP:Starting, nicht aufgefüllt.

15

Ja

EventClass

int

Ereignistyp = 137.

27

Nein

EventSequence

int

Die Sequenz eines bestimmten Ereignisses innerhalb der Anforderung.

51

Nein

IndexID

int

ID für den Index des Objekts, das von dem Ereignis betroffen ist. Sie können die Index-ID für ein Objekt mithilfe der indid-Spalte der sysindexes-Systemtabelle ermitteln.

24

Ja

IsSystem

int

Gibt an, ob das Ereignis bei einem Systemprozess oder einem Benutzerprozess aufgetreten ist. 1 = System, 0 = Benutzer.

60

Ja

LoginSid

image

Die Sicherheits-ID (Security Identifier, SID) des angemeldeten Benutzers. Dieses Ereignis wird immer vom Systemthread gemeldet. IsSystem = 1; SID = sa.

41

Ja

Modus

int

Der Status, der von einem Ereignis empfangen oder angefordert wird.

0=NULL

1=Sch-S

2=Sch-M

3 = S

4 = U

5 = X

6 = IS

7 = IU

8 = IX

9 = SIU

10 = SIX

11 = UIX

12 = BU

13 = RangeS-S

14 = RangeS-U

15 = RangeI-N

16 = RangeI-S

17=RangeI-U

18=RangeI-X

19=RangeX-S

20=RangeX-U

21=RangeX-X

32

Ja

ObjectID

int

Die vom System zugewiesene ID des Objekts, für das die Sperre abgerufen wurde (sofern verfügbar und anwendbar).

22

Ja

ServerName

nvarchar

Der Name der Instanz von SQL Server, für die eine Ablaufverfolgung ausgeführt wird

26

SessionLoginName

nvarchar

Der Anmeldename des Benutzers, der die Sitzung ursprünglich begonnen hat. Wenn Sie z. B. mit Login1 eine Verbindung zu SQL Server herstellen und mit Login2 eine Anweisung ausführen, zeigt SessionLoginName Login1 an, und LoginName zeigt Login2 an. Diese Spalte zeigt sowohl den SQL Server- als auch den Windows-Anmeldenamen an.

64

Ja

TextData

ntext

Textwert, der von der Ereignisklasse abhängt, die in der Ablaufverfolgung aufgezeichnet wurde.

1

Ja

TransactionID

bigint

Die vom System zugewiesene ID der Transaktion

4

Ja

Siehe auch

Verweis

sp_trace_setevent (Transact-SQL)

sp_configure (Transact-SQL)