Filtrar um rastreamento

Aplica-se a:SQL Server

Os filtros limitam os eventos coletados em um rastreamento. Se não houver um filtro definido, serão retornados todos os eventos das classes de evento selecionadas na saída do rastreamento. Por exemplo, limitar os nomes de usuário do Windows em um rastreamento a usuários específicos restringe os dados de saída apenas a esses usuários.

Não é obrigatório definir um filtro para um rastreamento. Porém, um filtro minimiza a sobrecarga incorrida durante um rastreamento. O filtro retorna dados focados e, logo, facilita a análise e a auditoria do desempenho.

Para filtrar os dados de eventos capturados em um rastreamento, selecione critérios de evento que retornem apenas dados relevantes do rastreamento. Por exemplo, você pode incluir ou excluir do rastreamento o monitoramento da atividade de um aplicativo específico.

Observação

Quando o SQL Server Profiler cria rastreamentos, ele filtra sua própria atividade por padrão.

Um outro exemplo: se você monitorar consultas para determinar os lotes de execução mais demorada, defina critérios de evento de rastreamento de modo a monitorar apenas os lotes cuja execução leve mais de 30 segundos (valor mínimo de CPU de 30.000 milissegundos).

Diretrizes para a criação de filtros

Em geral, siga estas etapas para filtrar um rastreamento.

  1. Identifique os eventos que deseja incluir no rastreamento.

  2. Identifique os dados e colunas de dados que contêm as informações de que necessita.

  3. Identifique o subconjunto dos dados de que necessita e defina filtros de acordo com ele.

Por exemplo, talvez lhe interesse apenas eventos que tenham certa duração ou mais. Você pode criar um rastreamento que inclua eventos em que a coluna de dados Duration é maior que 300 milissegundos. Seu rastreamento não incluirá eventos que terminem em menos de 300 milissegundos.

Você pode criar filtros por meio do SQL Server Profiler ou de procedimentos armazenados de Transact-SQL.

Para filtrar eventos em um modelo de rastreamento

Filtrar eventos em um rastreamento (SQL Server Profiler)

Definir um filtro de rastreamento (Transact-SQL)

Para modificar filtros

Modificar um filtro (SQL Server Profiler)

A disponibilidade do filtro depende da coluna de dados. Algumas colunas de dados não podem ser filtradas. As colunas de dados que podem ser filtradas só o podem por certos operadores relacionais, como mostra a tabela a seguir.

Operador relacional Símbolo do operador Descrição
Curtir LIKE Especifica que os dados de evento de rastreamento devem ser semelhantes ao texto digitado. Permite vários valores.
Não semelhante a Não semelhante a Especifica que os dados de evento de rastreamento não devem ser semelhantes ao texto digitado. Permite vários valores.
Igual a = Especifica que os dados de evento de rastreamento devem ser iguais ao valor digitado. Permite vários valores.
Diferente de <> Especifica que os dados de evento de rastreamento devem ser diferentes do valor digitado. Permite vários valores.
Maior que > Especifica que os dados de evento de rastreamento devem ser maiores que o valor digitado.
Maior ou igual a >= Especifica que os dados de evento de rastreamento devem ser iguais ou maiores que o valor digitado.
Menor que < Especifica que os dados de evento de rastreamento devem ser menores que o valor digitado.
Menor ou igual a <= Especifica que os dados de evento de rastreamento devem ser iguais ou menores que o valor digitado.

A tabela a seguir lista as colunas de dados que podem ser filtradas e os operadores relacionais disponíveis.

Colunas de dados Operadores relacionais
ApplicationName LIKE, NOT LIKE
BigintData1 =, <>, >=, <=
BigintData2 =, <>, >=, <=
BinaryData Use o SQL Server Profiler para filtrar eventos nessa coluna de dados. Para obter mais informações, consulte Filtrar rastreamentos com o SQL Server Profiler.
ClientProcessID =, <>, >=, <=
ColumnPermissions =, <>, >=, <=
CPU =, <>, >=, <=
DatabaseID =, <>, >=, <=
DatabaseName LIKE, NOT LIKE
DBUserName LIKE, NOT LIKE
Duration =, <>, >=, <=
EndTime >=, <=
Erro =, <>, >=, <=
EventSubClass =, <>, >=, <=
FileName LIKE, NOT LIKE
GUID Use o SQL Server Profiler para filtrar eventos nessa coluna de dados. Para obter mais informações, consulte Filtrar rastreamentos com o SQL Server Profiler.
Handle =, <>, >=, <=
HostName LIKE, NOT LIKE
IndexID =, <>, >=, <=
IntegerData =, <>, >=, <=
IntegerData2 =, <>, >=, <=
IsSystem =, <>, >=, <=
LineNumber =, <>, >=, <=
LinkedServerName LIKE, NOT LIKE
LoginName LIKE, NOT LIKE
LoginSid Use o SQL Server Profiler para filtrar eventos nessa coluna de dados. Para obter mais informações, consulte Filtrar rastreamentos com o SQL Server Profiler.
MethodName LIKE, NOT LIKE
Modo =, <>, >=, <=
NestLevel =, <>, >=, <=
NTDomainName LIKE, NOT LIKE
NTUserName LIKE, NOT LIKE
ObjectID =, <>, >=, <=
ObjectID2 =, <>, >=, <=
ObjectName LIKE, NOT LIKE
ObjectType =, <>, >=, <=
Deslocamento =, <>, >=, <=
OwnerID =, <>, >=, <=
OwnerName LIKE, NOT LIKE
ParentName LIKE, NOT LIKE
Permissões =, <>, >=, <=
ProviderName LIKE, NOT LIKE
Reads =, <>, >=, <=
RequestID =, <>, >=, <=
RoleName LIKE, NOT LIKE
RowCounts =, <>, >=, <=
SessionLoginName LIKE, NOT LIKE
Gravidade =, <>, >=, <=
SourceDatabaseID =, <>, >=, <=
SPID =, <>, >=, <=
SqlHandle Use o SQL Server Profiler para filtrar eventos nessa coluna de dados. Para obter mais informações, consulte Filtrar rastreamentos com o SQL Server Profiler.
StartTime >=, <=
Estado =, <>, >=, <=
Êxito =, <>, >=, <=
TargetLoginName LIKE, NOT LIKE
TargetLoginSid Use o SQL Server Profiler para filtrar eventos nessa coluna de dados. Para obter mais informações, consulte Filtrar rastreamentos com o SQL Server Profiler.
TargetUserName LIKE, NOT LIKE
TextData * LIKE, NOT LIKE
TransactionID =, <>, >=, <=
Tipo =, <>, >=, <=
Writes =, <>, >=, <=
XactSequence =, <>, >=, <=

* Se estiver rastreando eventos do utilitário osql ou do utilitário sqlcmd, sempre acrescente % aos filtros na coluna de dados TextData.

Por precaução em razão da segurança, o Rastreamento do SQL omite do rastreamento, automaticamente, toda informação dos procedimentos armazenados relacionados que afetem senhas. Este mecanismo de segurança não é configurável e está sempre em vigor. Ele impede a captura de senhas por usuários que, de outra forma, teriam permissões para rastrear todas as atividades no SQL Server.

Os seguintes procedimentos armazenados relacionados à segurança são monitorados, mas nenhuma saída é gravada na coluna de dados 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)