Filtrando um rastreamento
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 exclui, por padrão, a sua própria atividade. |
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.
Identifique os eventos que deseja incluir no rastreamento.
Identifique os dados e colunas de dados que contêm as informações de que necessita.
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
Para modificar filtros
Como 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 |
---|---|---|
Semelhante a |
LIKE |
Especifica que os dados de evento de rastreamento devem ser semelhantes ao texto digitado. Permite vários valores. |
Não semelhante a |
NOT LIKE |
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 que 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 que 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 nesta coluna de dados. Para obter mais informações, consulte Filtrando rastreamentos com o SQL Server Profiler. |
ClientProcessID |
=, <>, >=, <= |
ColumnPermissions |
=, <>, >=, <= |
CPU |
=, <>, >=, <= |
DatabaseID |
=, <>, >=, <= |
DatabaseName |
LIKE, NOT LIKE |
DBUserName |
LIKE, NOT LIKE |
Duration |
=, <>, >=, <= |
EndTime |
>=, <= |
Error |
=, <>, >=, <= |
EventSubClass |
=, <>, >=, <= |
FileName |
LIKE, NOT LIKE |
GUID |
Use o SQL Server Profiler para filtrar eventos nesta coluna de dados. Para obter mais informações, consulte Filtrando 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 nesta coluna de dados. Para obter mais informações, consulte Filtrando rastreamentos com o SQL Server Profiler. |
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 |
Permissões |
=, <>, >=, <= |
ProviderName |
LIKE, NOT LIKE |
Reads |
=, <>, >=, <= |
RequestID |
=, <>, >=, <= |
RoleName |
LIKE, NOT LIKE |
RowCounts |
=, <>, >=, <= |
SessionLoginName |
LIKE, NOT LIKE |
Severity |
=, <>, >=, <= |
SourceDatabaseID |
=, <>, >=, <= |
SPID |
=, <>, >=, <= |
SqlHandle |
Use o SQL Server Profiler para filtrar eventos nesta coluna de dados. Para obter mais informações, consulte Filtrando rastreamentos com o SQL Server Profiler. |
StartTime |
>=, <= |
State |
=, <>, >=, <= |
Success |
=, <>, >=, <= |
TargetLoginName |
LIKE, NOT LIKE |
TargetLoginSid |
Use o SQL Server Profiler para filtrar eventos nesta coluna de dados. Para obter mais informações, consulte Filtrando rastreamentos com o SQL Server Profiler. |
TargetUserName |
LIKE, NOT LIKE |
TextData1 |
LIKE, NOT LIKE |
TransactionID |
=, <>, >=, <= |
Type |
=, <>, >=, <= |
Writes |
=, <>, >=, <= |
XactSequence |
=, <>, >=, <= |
1 Se rastrear 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 os usuários que detêm permissões para rastrear toda a atividade no SQL Server de capturar senhas.
Os seguintes procedimentos armazenados relacionados à segurança são monitorados, mas nenhuma saída é gravada na coluna de dados TextData:
sp_adddistpublisher (Transact-SQL)
sp_adddistributiondb (Transact-SQL)
sp_adddistributor (Transact-SQL)
sp_addlinkedserver (Transact-SQL)
sp_addlinkedsrvlogin (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_helpsubscription_properties (Transact-SQL)