Delen via


Een tracering filteren

van toepassing op:SQL Server-

Filters beperken de gebeurtenissen die in een trace worden verzameld. Als een filter niet is ingesteld, worden alle gebeurtenissen van de geselecteerde gebeurtenisklassen geretourneerd in de traceringsuitvoer. Als u bijvoorbeeld de Windows-gebruikersnamen in een tracering beperkt tot specifieke gebruikers, worden de uitvoergegevens alleen voor die gebruikers beperkt.

Het is niet verplicht om een filter voor een tracering in te stellen. Een filter minimaliseert echter de overhead die wordt gemaakt tijdens een tracering. Een filter retourneert gerichte gegevens en maakt dus prestatieanalyse en audits eenvoudiger.

Als u de gebeurtenisgegevens wilt filteren die zijn vastgelegd in een trace, selecteert u de criteria voor traceringsevenementen die alleen relevante gegevens van de tracering retourneren. U kunt bijvoorbeeld de bewaking van de activiteit van een specifieke toepassing opnemen of uitsluiten van de tracering.

Notitie

Wanneer SQL Server Profiler traceringen maakt, filtert het standaard zijn eigen activiteiten eruit.

Als u bijvoorbeeld query's bewaakt om de batches te bepalen die het langst duren om uit te voeren, stelt u de criteria voor traceringsgebeurtenissen in om alleen de batches te bewaken die langer dan 30 seconden duren (een CPU-minimumwaarde van 30.000 milliseconden).

Richtlijnen voor het maken van filters

In het algemeen volgt u deze stappen om een tracering te filteren.

  1. Identificeer de gebeurtenissen die u wilt opnemen in de tracering.
  2. Identificeer de gegevens en gegevenskolommen die de benodigde informatie bevatten.
  3. Identificeer een subset van de gegevens die u nodig hebt en definieer filters op basis van die subset van gegevens.

U bent bijvoorbeeld alleen geïnteresseerd in gebeurtenissen die langer duren dan een bepaalde tijdsduur. U kunt een tracering maken die gebeurtenissen bevat waarin de Duration gegevenskolom groter is dan 300 milliseconden. Uw trace bevat geen gebeurtenissen die in minder dan 300 milliseconden zijn voltooid.

U kunt filters maken met behulp van SQL Server Profiler of Transact-SQL opgeslagen procedures.

Gebeurtenissen filteren in een traceringssjabloon

Filters wijzigen

De beschikbaarheid van filters is afhankelijk van de gegevenskolom. Sommige gegevenskolommen kunnen niet worden gefilterd. De gegevenskolommen die kunnen worden gefilterd, kunnen alleen worden gefilterd door bepaalde relationele operators, zoals wordt weergegeven in de volgende tabel.

Relationele operator Operatorsymbool Beschrijving
Zoals LIKE Hiermee geeft u op dat de tracerings gebeurtenisgegevens moeten zijn zoals de tekst die is ingevoerd. Hiermee staat u meerdere waarden toe.
Niet zoals NOT LIKE Hiermee geeft u op dat de tracerings gebeurtenisgegevens niet mogen zijn zoals de tekst die is ingevoerd. Hiermee staat u meerdere waarden toe.
is gelijk aan = Hiermee geeft u op dat de tracerings gebeurtenisgegevens gelijk moeten zijn aan de ingevoerde waarde. Hiermee staat u meerdere waarden toe.
niet gelijk aan <> Hiermee geeft u op dat de tracerings gebeurtenisgegevens niet gelijk moeten zijn aan de ingevoerde waarde. Hiermee staat u meerdere waarden toe.
groter dan > Hiermee geeft u op dat de tracerings gebeurtenisgegevens groter moeten zijn dan de ingevoerde waarde.
groter dan of gelijk aan >= Hiermee geeft u op dat de tracerings gebeurtenisgegevens groter dan of gelijk moeten zijn aan de ingevoerde waarde.
kleiner dan < Hiermee geeft u op dat de tracerings gebeurtenisgegevens kleiner moeten zijn dan de ingevoerde waarde.
kleiner dan of gelijk aan <= Hiermee geeft u op dat de tracerings gebeurtenisgegevens kleiner dan of gelijk moeten zijn aan de opgegeven waarde.

De volgende tabel bevat de filterbare gegevenskolommen en de beschikbare relationele operators.

Gegevenskolommen Relationele operators
ApplicationName LIKE, NOT LIKE
BigintData1 =, <>, >=, <=
BigintData2 =, <>, >=, <=
BinaryData Gebruik SQL Server Profiler om gebeurtenissen in deze gegevenskolom te filteren. Zie Filtertraceringen met SQL Server Profilervoor meer informatie.
ClientProcessID =, <>, >=, <=
ColumnPermissions =, <>, >=, <=
CPU =, <>, >=, <=
DatabaseID =, <>, >=, <=
DatabaseName LIKE, NOT LIKE
DBUserName LIKE, NOT LIKE
Duration =, <>, >=, <=
EndTime >=, <=
Error =, <>, >=, <=
EventSubClass =, <>, >=, <=
FileName LIKE, NOT LIKE
GUID Gebruik SQL Server Profiler om gebeurtenissen in deze gegevenskolom te filteren. Zie Filtertraceringen met SQL Server Profilervoor meer informatie.
Handle =, <>, >=, <=
HostName LIKE, NOT LIKE
IndexID =, <>, >=, <=
IntegerData =, <>, >=, <=
IntegerData2 =, <>, >=, <=
IsSystem =, <>, >=, <=
LineNumber =, <>, >=, <=
LinkedServerName LIKE, NOT LIKE
LoginName LIKE, NOT LIKE
LoginSid Gebruik SQL Server Profiler om gebeurtenissen in deze gegevenskolom te filteren. Zie Filtertraceringen met SQL Server Profilervoor meer informatie.
MethodName LIKE, NOT LIKE
Mode =, <>, >=, <=
NestLevel =, <>, >=, <=
NTDomainName LIKE, NOT LIKE
NTUserName LIKE, NOT LIKE
ObjectID =, <>, >=, <=
ObjectID2 =, <>, >=, <=
ObjectName LIKE, NOT LIKE
ObjectType =, <>, >=, <=
Offset =, <>, >=,<=
OwnerID =, <>, >=,<=
OwnerName LIKE, NOT LIKE
ParentName LIKE, NOT LIKE
Permissions =, <>, >=,<=
ProviderName LIKE, NOT LIKE
Reads =, <>, >=,<=
RequestID =, <>, >=,<=
RoleName LIKE, NOT LIKE
RowCounts =, <>, >=,<=
SessionLoginName LIKE, NOT LIKE
Severity =, <>, >=,<=
SourceDatabaseID =, <>, >=,<=
SPID =, <>, >=, <=
SqlHandle Gebruik SQL Server Profiler om gebeurtenissen in deze gegevenskolom te filteren. Zie Filtertraceringen met SQL Server Profilervoor meer informatie.
StartTime >=,<=
State =, <>, >=,<=
Success =, <>, >=,<=
TargetLoginName LIKE, NOT LIKE
TargetLoginSid Gebruik SQL Server Profiler om gebeurtenissen in deze gegevenskolom te filteren. Zie Filtertraceringen met SQL Server Profilervoor meer informatie.
TargetUserName LIKE, NOT LIKE
TextData 1 LIKE, NOT LIKE
TransactionID =, <>, >=,<=
Type =, <>, >=,<=
Writes =, <>, >=,<=
XactSequence =, <>, >=,<=

1 Als u gebeurtenissen wilt traceren vanuit het hulpprogramma osql of het hulpprogramma sqlcmd, voegt u altijd % toe aan filters op de TextData gegevenskolom.

Als voorzorgsmaatregel voor beveiliging laat SQL Trace automatisch weg van de tracering van informatie uit opgeslagen beveiligingsprocedures die van invloed zijn op wachtwoorden. Dit beveiligingsmechanisme is niet geconfigureerd en is altijd van kracht. Hiermee voorkomt u dat gebruikers, die anders gemachtigd zijn om alle activiteiten op SQL Server te traceren, wachtwoorden vastleggen.

De volgende opgeslagen beveiligingsprocedures worden bewaakt, maar er wordt geen uitvoer naar de TextData gegevenskolom geschreven: