Filtrar una traza

Los filtros limitan los eventos que se recopilan en la traza. Si no se establece un filtro, se devolverán todos los eventos de las clases de eventos seleccionadas en la salida de la traza. Por ejemplo, si limita los nombres de usuarios de Windows de una traza para usuarios específicos, los datos de la salida se limitarán sólo a aquellos usuarios.

No es obligatorio establecer un filtro para una traza. Sin embargo, un filtro minimiza la sobrecarga que comporta una traza. Un filtro devuelve los datos relativos y, de este modo, facilita el análisis del rendimiento y las auditorías.

Para filtrar los datos de eventos capturados en una traza, seleccione los criterios de los eventos de traza que devuelven sólo los datos relevantes de la traza. Por ejemplo, puede incluir o excluir la supervisión de la actividad de una aplicación específica en la traza.

Nota

Cuando el SQL Server Profiler crea trazas, filtra su propia actividad de manera predeterminada.

Como ejemplo adicional, si supervisa consultas para determinar los procesos por lotes que tardan más tiempo en ejecutarse, puede establecer los criterios de los eventos de traza de modo que se supervisen sólo los procesos por lotes que tarden más de 30 segundos en ejecutarse (un valor mínimo de CPU de 30.000 milisegundos).

Directrices para la creación de filtros

En general, se deben seguir los pasos que se indican a continuación para filtrar una traza.

  1. Identifique los eventos que desea incluir en la traza.

  2. Identifique los datos y las columnas de datos que contienen la información necesaria.

  3. Identifique un subconjunto de los datos que necesita y defina filtros basándose en ese subconjunto de datos.

Por ejemplo, puede que sólo le interesen los eventos que tardan más de un tiempo determinado. Puede crear una traza que incluya los eventos en los que el valor de la columna de datos Duration supere los 300 milisegundos. La traza no incluirá los eventos que finalicen en menos de 300 milisegundos.

Puede crear filtros mediante procedimientos almacenados del Analizador de SQL Server o Transact-SQL.

Para filtrar los eventos de una plantilla de traza

Para modificar filtros

Cómo modificar un filtro (SQL Server Profiler)

La disponibilidad de filtros depende de la columna de datos. Algunas columnas de datos no se pueden filtrar. Las demás sólo se pueden filtrar mediante determinados operadores relacionales, como se muestra en la siguiente tabla.

Operador relacional

Símbolo del operador

Descripción

Como

LIKE

Especifica que los datos del evento de traza deben ser como el texto escrito. Acepta varios valores.

No es como

NOT LIKE

Especifica que los datos del evento de traza no deben ser como el texto escrito. Acepta varios valores.

Es igual a

=

Especifica que los datos del evento de traza deben ser iguales al valor escrito. Acepta varios valores.

No es igual a

<>

Especifica que los datos del evento de traza deben ser distintos del valor escrito. Acepta varios valores.

Mayor que

>

Especifica que los datos del evento de traza deben ser mayores que el valor escrito.

Mayor o igual que

>=

Especifica que los datos del evento de traza deben ser mayores o iguales que el valor escrito.

Menor que

<

Especifica que los datos del evento de traza deben ser menores que el valor escrito.

Menor o igual que

<=

Especifica que los datos del evento de traza deben ser menores o iguales que el valor escrito.

En la siguiente tabla se muestran las columnas de datos filtrables y los operadores relacionales disponibles.

Columnas de datos

Operadores relacionales

ApplicationName

LIKE, NOT LIKE

BigintData1

=, <>, >=, <=

BigintData2

=, <>, >=, <=

BinaryData

Utilice el SQL Server Profiler para filtrar los eventos de esta columna de datos. For more information, see Filtrar trazas con el Analizador de SQL Server.

ClientProcessID

=, <>, >=, <=

ColumnPermissions

=, <>, >=, <=

CPU

=, <>, >=, <=

DatabaseID

=, <>, >=, <=

DatabaseName

LIKE, NOT LIKE

DBUserName

LIKE, NOT LIKE

Duration

=, <>, >=, <=

EndTime

>=, <=

Error

=, <>, >=, <=

EventSubClass

=, <>, >=, <=

FileName

LIKE, NOT LIKE

GUID

Utilice el SQL Server Profiler para filtrar los eventos de esta columna de datos. For more information, see Filtrar trazas con el Analizador de SQL Server.

Handle

=, <>, >=, <=

HostName

LIKE, NOT LIKE

IndexID

=, <>, >=, <=

IntegerData

=, <>, >=, <=

IntegerData2

=, <>, >=, <=

IsSystem

=, <>, >=, <=

LineNumber

=, <>, >=, <=

LinkedServerName

LIKE, NOT LIKE

LoginName

LIKE, NOT LIKE

LoginSid

Utilice el SQL Server Profiler para filtrar los eventos de esta columna de datos. For more information, see Filtrar trazas con el Analizador de SQL Server.

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

Utilice el SQL Server Profiler para filtrar los eventos de esta columna de datos. For more information, see Filtrar trazas con el Analizador de SQL Server.

StartTime

>=, <=

State

=, <>, >=, <=

Success

=, <>, >=, <=

TargetLoginName

LIKE, NOT LIKE

TargetLoginSid

Utilice el SQL Server Profiler para filtrar los eventos de esta columna de datos. For more information, see Filtrar trazas con el Analizador de SQL Server.

TargetUserName

LIKE, NOT LIKE

TextData1

LIKE, NOT LIKE

TransactionID

=, <>, >=, <=

Type

=, <>, >=, <=

Writes

=, <>, >=, <=

XactSequence

=, <>, >=, <=

1 Si se realiza un seguimiento de los eventos de la utilidad osql o sqlcmd, agregue siempre % a los filtros de la columna de datos TextData.

Como mecanismo de seguridad, Traza de SQL omite automáticamente de la traza la información de los procedimientos almacenados relacionados con la seguridad que afecten a contraseñas. Este mecanismo de seguridad no es configurable y siempre está activo, lo que impide que los usuarios, que de otra manera tendrían los permisos para realizar el seguimiento de toda la actividad de SQL Server, capturen contraseñas.

Se supervisan los siguientes procedimientos almacenados relativos a la seguridad, pero no se escribe ninguna salida en la columna de datos TextData:

sp_addapprole (Transact-SQL)

sp_adddistpublisher (Transact-SQL)

sp_adddistributiondb (Transact-SQL)

sp_adddistributor (Transact-SQL)

sp_addlinkedserver (Transact-SQL)

sp_addlinkedsrvlogin (Transact-SQL)

sp_addlogin (Transact-SQL)

sp_addmergepullsubscription_agent (Transact-SQL)

sp_addpullsubscription_agent (Transact-SQL)

sp_addremotelogin (Transact-SQL)

sp_addsubscriber (Transact-SQL)

sp_approlepassword (Transact-SQL)

sp_changedistpublisher (Transact-SQL)

sp_changesubscriber (Transact-SQL)

sp_dsninfo (Transact-SQL)

sp_helpsubscription_properties (Transact-SQL)

sp_link_publication (Transact-SQL)

sp_password (Transact-SQL)

sp_setapprole (Transact-SQL)