Compartilhar via


SQL Server Profiler

O SQL Server Profiler é uma interface avançada para criar e gerenciar rastreamentos, e analisar e reproduzir resultados de rastreamento. Os eventos são salvos em um arquivo de rastreamento que, posteriormente, pode ser analisado ou usado para reproduzir uma série específica de etapas na tentativa de diagnosticar um problema.

Observação importanteImportante

Estamos anunciando a substituição de SQL Server Profiler para o Mecanismo de Banco de Dados Trace Capture e o Trace Replay. Esses recursos terão suporte na próxima versão do SQL Server, mas serão removidos em uma versão posterior. A versão específica do SQL Server não foi determinada. O namespace Microsoft.SqlServer.Management.Trace que contém os objetos Trace and Replay do Microsoft SQL Server também será substituído. Observe que o SQL Server Profiler para as cargas de trabalho do Analysis Services não está sendo substituído e o suporte para ele continuará.

A tabela a seguir mostra os recursos que devem ser usados no SQL Server 2012 para capturar e reproduzir seus dados de rastreamento:

Recurso\carga de trabalho de destino

Mecanismo relacional

Analysis Services

Captura de rastreamento

Interface gráfica de usuário Eventos Estendidos no SQL Server Management Studio

SQL Server Profiler

Reprodução de rastreamento

Distributed Replay

SQL Server Profiler

Benefícios do SQL Server Profiler

O Microsoft SQL Server Profiler é uma interface gráfica do usuário que o Rastreamento do SQL usa para monitorar uma instância do Mecanismo de Banco de Dados ou do Analysis Services. Você pode capturar e salvar dados sobre cada evento em um arquivo ou tabela para análise posterior. Por exemplo, é possível monitorar um ambiente de produção para observar quais procedimentos armazenados estão afetando o desempenho devido à lentidão na execução. O SQL Server Profiler é usado para atividades como:

  • Percorrer consultas de problemas para localizar a causa do problema.

  • Localizar e diagnosticar consultas de execução lenta.

  • Capturar a série de instruções Transact-SQL que resultam em um problema. Em seguida, o rastreamento salvo pode ser usado para replicar o problema em um servidor de teste onde o problema pode ser diagnosticado.

  • Monitorar o desempenho do SQL Server para ajustar cargas de trabalho. Para obter mais informações sobre como ajustar o design físico do banco de dados para cargas de trabalho do banco de dados, consulte Orientador de Otimização do Mecanismo de Banco de Dados.

  • Correlacionar contadores de desempenho para diagnosticar problemas.

O SQL Server Profiler também oferece suporte à execução de auditoria das ações executadas em instâncias do SQL Server. As auditorias registram ações relacionadas à segurança para análise posterior por um administrador de segurança.

Conceitos do SQL Server Profiler

Para usar o SQL Server Profiler, você precisa compreender os termos que descrevem o modo de funcionamento da ferramenta.

ObservaçãoObservação

Ao trabalhar com o SQL Server Profiler, é útil compreender o Rastreamento do SQL. Para obter mais informações, consulte Rastreamento do SQL.

  • Evento
    Um evento é uma ação gerada dentro de uma instância do Mecanismo de Banco de Dados do SQL Server. São exemplos:

    • Conexões, falhas e desconexões de logon.

    • Instruções Transact-SQL SELECT, INSERT, UPDATE e DELETE.

    • Status de lote de chamadas de procedimento remoto (RPC).

    • O início ou término de um procedimento armazenado.

    • O início ou término de instruções dentro de procedimentos armazenados.

    • O início ou término de um lote de SQL.

    • Um erro gravado no log de erros do SQL Server.

    • Um bloqueio adquirido ou liberado em um objeto de banco de dados.

    • Um cursor aberto.

    • Verificações de permissão de segurança.

    Todos os dados gerados por um evento são exibidos no rastreamento em uma única linha. Esta linha é cruzada por colunas de dados que descrevem o evento em detalhes.

  • Classede evento
    Uma classe de evento é um tipo de evento que pode ser rastreado. A classe de evento contém todos os dados que podem ser informados por um evento. São exemplos de classes de evento:

    • SQL:BatchCompleted

    • Audit Login

    • Audit Logout

    • Lock:Acquired

    • Lock:Released

  • Categoriade evento
    Uma categoria de evento define o modo pelo qual os eventos são agrupados no SQL Server Profiler. Por exemplo, todas as classes de eventos de bloqueio são agrupadas dentro da categoria de evento Locks. Categorias de evento, contudo, só existem dentro do SQL Server Profiler. Este termo não reflete o modo pelo qual são agrupados eventos do Mecanismo.

  • Colunade dados
    Uma coluna de dados é um atributo de uma classe de evento capturada no rastreamento. Como a classe de evento determina o tipo de dados que pode ser coletado, nem todas as colunas de dados se aplicam a todas as classes de evento. Por exemplo, em um rastreamento que captura a classe de evento Lock:Acquired, a coluna de dados BinaryData contém o valor da ID de página ou linha bloqueada, mas a coluna de dados Integer Data não contém nenhum valor, pois ela não se aplica à classe de evento que está sendo capturada.

  • Modelo
    Um modelo define a configuração padrão para um rastreamento. Especificamente, ele contém as classes de evento que se quer monitorar com o SQL Server Profiler. Por exemplo, você pode criar um modelo que especifique os eventos, colunas de dados e filtros a usar. Um modelo não é executado, mas, sim, salvo como um arquivo de extensão .tdf. Uma vez salvo, o modelo controla os dados capturados quando um rastreamento que o tem por base é ativado.

  • Rastreamento
    Um rastreamento captura dados segundo classes de evento, colunas de dados e filtros selecionados. Por exemplo, você pode criar um rastreamento para monitorar erros de exceção. Para tanto, deve-se selecionar a classe de evento Exception e as colunas de dados Error, State e Severity. É preciso coletar os dados dessas três colunas para que os dados produzidos pelo rastreamento façam sentido. Em seguida, você pode executar um rastreamento configurado dessa forma e coletar dados sobre todo evento Exception que ocorrer no servidor. O rastreamento pode ser salvo ou utilizado para análise imediata. Rastreamentos podem ser reproduzidos em data posterior, embora certos eventos, como Exception, nunca sejam reproduzidos. Você também pode salvar o rastreamento como um modelo, para criar rastreamentos semelhantes no futuro.

    O SQL Server dispõe de duas formas de rastrear uma instância sua: através do SQL Server Profiler ou de procedimentos armazenados do sistema.

  • Filtro
    Ao criar um rastreamento ou modelo, você pode definir critérios para filtrar os dados coletados pelo evento. Para impedir que os rastreamentos se tornem grandes demais, você pode filtrá-los de modo que apenas um subconjunto dos dados do evento sejam coletados. Por exemplo, você pode limitar os nomes de usuário do Windows no rastreamento a usuários específicos, reduzindo, assim, os dados de saída.

    Se não houver um filtro definido, serão retornados todos os eventos das classes de evento selecionadas na saída do rastreamento.

Tarefas do SQL Server Profiler

Descrição da tarefa

Tópico

Lista os modelos predefinidos que o SQL Server fornece para monitorar determinados tipos de eventos, e as permissões necessárias para reproduzir rastreamentos.

Modelos e permissões do SQL Server Profiler

Descreve como executar o SQL Server Profiler.

Permissões necessárias para executar o SQL Server Profiler

Descreve como criar um rastreamento.

Criar um rastreamento (SQL Server Profiler)

Descreve como especificar eventos e colunas de dados para um arquivo de rastreamento.

Especificar eventos e colunas de dados para um arquivo de rastreamento (SQL Server Profiler)

Descreve como salvar resultados de rastreamento em um arquivo.

Salvar resultados de rastreamento em um arquivo (SQL Server Profiler)

Descreve como salvar resultados de rastreamento em uma tabela.

Salvar resultados de rastreamento em uma tabela (SQL Server Profiler)

Descreve como filtrar eventos em um rastreamento.

Filtrar eventos em um rastreamento (SQL Server Profiler)

Descreve como exibir informações de filtro.

Exibir informações de filtro (SQL Server Profiler)

Descreve como modificar um filtro.

Modificar um filtro (SQL Server Profiler)

Descreve como definir um tamanho máximo para um arquivo de rastreamento (SQL Server Profiler).

Definir um tamanho máximo para um arquivo de rastreamento (SQL Server Profiler)

Descreve como definir um tamanho máximo para uma tabela de rastreamento.

Definir um tamanho máximo para uma tabela de rastreamento (SQL Server Profiler)

Descreve como iniciar um rastreamento.

Iniciar um rastreamento

Descreve como iniciar automaticamente um rastreamento após a conexão com um servidor.

Iniciar um rastreamento automaticamente após a conexão com um servidor (SQL Server Profiler)

Descreve como filtrar eventos com base na hora de início do evento.

Filtrar eventos com base na hora de início do evento (SQL Server Profiler)

Descreve como filtrar eventos com base na hora de término do evento.

Filtrar eventos com base na hora de término do evento (SQL Server Profiler)

Descreve como filtrar IDs de processo do servidor de filtro (SPIDs) em um rastreamento.

Filtrar IDs de processo de servidor em um rastreamento (SQL Server Profiler)

Descreve como pausar um rastreamento.

Pausar um rastreamento (SQL Server Profiler)

Descreve como interromper um rastreamento.

Interromper um rastreamento (SQL Server Profiler)

Descreve como executar um rastreamento depois que ele tiver sido pausado ou interrompido.

Executar um rastreamento que foi pausado ou interrompido (SQL Server Profiler)

Descreve como limpar uma janela de rastreamento.

Limpar uma janela de rastreamento (SQL Server Profiler)

Descreve como fechar uma janela de rastreamento.

Fechar uma janela de rastreamento (SQL Server Profiler)

Descreve como definir padrões de definição de rastreamento.

Definir padrões de definição de rastreamento (SQL Server Profiler)

Descreve como definir padrões de exibição de rastreamento.

Definir padrões de exibição de rastreamento (SQL Server Profiler)

Descreve como abrir um arquivo de rastreamento.

Abrir um arquivo de rastreamento (SQL Server Profiler)

Descreve como abrir uma tabela de rastreamento.

Abrir uma tabela de rastreamento (SQL Server Profiler)

Descreve como reproduzir uma tabela de rastreamento.

Repetir uma tabela de rastreamento (SQL Server Profiler)

Descreve como reproduzir um arquivo de rastreamento.

Repetir um arquivo de rastreamento (SQL Server Profiler)

Descreve como reproduzir um único evento de cada vez.

Repetir um único evento de cada vez (SQL Server Profiler)

Descreve como reproduzir até um ponto de interrupção.

Repetir até um ponto de interrupção (SQL Server Profiler)

Descreve como reproduzir até um cursor.

Repetir até um cursor (SQL Server Profiler)

Descreve como reproduzir um script Transact-SQL.

Repetir um script Transact-SQL (SQL Server Profiler)

Descreve como criar um modelo de rastreamento.

Criar um modelo de rastreamento (SQL Server Profiler)

Descreve como modificar um modelo de rastreamento.

Modificar um modelo de rastreamento (SQL Server Profiler)

Descreve como definir opções de rastreamento globais.

Definir opções de rastreamento globais (SQL Server Profiler)

Descreve como localizar um valor ou uma coluna de dados durante um rastreamento.

Localizar um valor ou coluna de dados durante um rastreamento (SQL Server Profiler)

Descreve como derivar um modelo a partir de um rastreamento em execução.

Derivar um modelo de um rastreamento em execução (SQL Server Profiler)

Descreve como derivar um modelo a partir de um arquivo de rastreamento ou uma tabela de rastreamento.

Derivar um modelo a partir de um arquivo ou tabela de rastreamento (SQL Server Profiler)

Descreve como criar um script Transact-SQL para executar um rastreamento.

Criar um script Transact-SQL para executar um rastreamento (SQL Server Profiler)

Descreve como exportar um modelo de rastreamento.

Exportar um modelo de rastreamento (SQL Server Profiler)

Descreve como importar um modelo de rastreamento.

Importar um modelo de rastreamento (SQL Server Profiler)

Descreve como extrair um script de um rastreamento.

Extrair um script de um rastreamento (SQL Server Profiler)

Descreve como correlacionar um rastreamento com dados de log de desempenho do Windows.

Correlacionar um rastreamento com dados do log de desempenho do Windows (SQL Server Profiler)

Descreve como organizar colunas exibidas em um rastreamento.

Organizar colunas exibidas em um rastreamento (SQL Server Profiler)

Descreve como iniciar o SQL Server Profiler.

Iniciar o SQL Server Profiler

Descreve como salvar rastreamentos e rastrear modelos.

Salvar rastreamentos e modelos de rastreamento

Descreve como modificar modelos de rastreamento.

Modificar modelos de rastreamento

Descreve como correlacionar um rastreamento com dados de log de desempenho do Windows.

Correlacionar um rastreamento com os dados de log de desempenho do Windows

Descreve como exibir e analisar rastreamentos com o SQL Server Profiler.

Exibir e analisar rastreamentos com o SQL Server Profiler

Descreve como analisar deadlocks com o SQL Server Profiler.

Analisar deadlocks com o SQL Server Profiler

Descreve como analisar consultas com resultados de SHOWPLAN no SQL Server Profiler.

Analisar consultas com resultados do Plano de Execução no SQL Server Profiler

Descreve como filtrar rastreamentos com o SQL Server Profiler.

Filtrar rastreamentos com o SQL Server Profiler

Descreve como usar os recursos de reprodução do SQL Server Profiler.

Repetir rastreamentos

Lista os tópicos de ajuda sensível a contexto do SQL Server Profiler.

Ajuda de F1 do SQL Server Profiler

Lista os procedimentos armazenados do sistema que são usados pelo SQL Server Profiler para monitorar o desempenho e a atividade.

Procedimentos armazenados do SQL Server Profiler (Transact-SQL)

Consulte também

Conceitos

Categoria de eventos Bloqueios

Categoria de evento Sessions

Categoria de evento dos procedimentos armazenados

Categoria de evento TSQL

SQL Server Profiler

Monitoramento de desempenho e atividade de servidor