Monitorando e diagnosticando objetos de banco de dados gerenciado

Este tópico fornece informações sobre as ferramentas que podem ser usadas para monitorar e diagnosticar objetos de banco de dados gerenciado e assemblies executados no SQL Server.

Eventos de rastreamento do Profiler

O SQL Server fornece o Rastreamento SQL e notificações de eventos para monitorar os eventos que ocorrem no Mecanismo de Banco de Dados. Registrando os eventos especificados, o Rastreamento SQL ajuda a solucionar problemas de desempenho, auditar a atividade de banco de dados, coletar dados de amostra em um ambiente de teste, depurar instruções Transact-SQL e procedimentos armazenados, e reunir dados para ferramentas de análise de desempenho. Para obter mais informações, consulte Monitorando eventos.

Evento

Descrição

Classe de evento Assembly Load

Usado para monitorar solicitações de carregamento de assembly (com êxito e com falha).

Classe de evento SQL:BatchStarting, Classe de evento SQL:BatchCompleted

Fornece informações sobre lotes Transact-SQL iniciados ou concluídos.

Classe de evento SP:Starting, Classe de evento SP:Completed

Usado para monitorar a execução de procedimentos armazenados Transact-SQL.

Classe de evento SQL:StmtStarting, Classe de evento SQL:StmtCompleted

Usado para monitorar a execução de CLR e rotinas Transact-SQL.

Contadores de desempenho

O SQL Server fornece objetos e contadores que podem ser usados pelo Monitor do Sistema para monitorar a atividade em computadores que executem uma instância do SQL Server. Um objeto é qualquer recurso do SQL Server, como um bloqueio do SQL Server ou um processo do Windows XP. Cada objeto contém um ou mais contadores que determinam vários aspectos dos objetos que serão monitorados. Para obter mais informações, consulte Usando objetos do SQL Server.

Objeto

Descrição

SQL Server, objeto CLR

Tempo total gasto na execução de CLR.

Contadores do Monitor do Sistema do Windows (PERFMON.EXE)

A ferramenta Monitor do Sistema do Windows (PERFMON.EXE) tem vários contadores de desempenho que podem ser usados para monitorar aplicativos de integração CLR. Os contadores de desempenho CLR do .NET podem ser filtrados pelo nome do processo "sqlservr" para rastrear aplicativos de integração CLR que estão em execução no momento.

Objeto de desempenho

Descrição

SqlServer:CLR

Fornece estatísticas de CPU para o servidor.

.NET CLR Exceptions

Rastreia o número de exceções por segundo.

.NET CLR Loading

Fornece informações sobre o AppDomains e os assemblies carregados no servidor.

.NET CLR Memory

Fornece informações sobre o uso da memória de CLR. Este objeto poderá ser usado para sinalizar alertará se o uso da memória se tornar muito intenso.

.NET Data Provider for SQL Server

Rastreia o número de conexões e desconexões por segundo. Este objeto pode ser usado para monitorar o nível de atividade do banco de dados.

As exibições de catálogo retornam informações usadas pelo Mecanismo de Banco de Dados do SQL Server. Recomendamos usar exibições do catálogo por serem a interface mais geral para metadados de catálogo e proporcionarem a maneira mais eficaz de obter, transformar e apresentar formas personalizadas dessas informações. Todos os metadados de catálogos disponíveis para o usuário são expostos por meio de exibições do catálogo. Para obter mais informações, consulte Exibições do catálogo (Transact-SQL).

Exibição de catálogo

Descrição

sys.assemblies (Transact-SQL)

Retorna informações sobre os assemblies registrados em um banco de dados.

sys.assembly_references (Transact-SQL)

Identifica os assemblies que referenciam outros.

sys.assembly_modules (Transact-SQL)

Retorna informações sobre cada função, procedimento armazenado e gatilho definidos em um assembly.

sys.assembly_files (Transact-SQL)

Retorna informações sobre os arquivos de assembly registrados em um banco de dados.

sys.assembly_types (Transact-SQL)

Identifica os UDTs (tipos definidos pelo usuário) definidos por um assembly.

sys.module_assembly_usages (Transact-SQL)

Identifica os assemblies nos quais os módulos CLR estão definidos.

sys.parameter_type_usages (Transact-SQL)

Retorna informações sobre parâmetros que são UDTs.

sys.server_assembly_modules (Transact-SQL)

Identifica o assembly no qual um gatilho CLR está definido.

sys.server_triggers (Transact-SQL)

Identifica os gatilhos DDL de nível de servidor em um servidor, inclusive gatilhos CLR.

sys.type_assembly_usages (Transact-SQL)

Identifica os assemblies nos quais os UDTs estão definidos.

sys.types (Transact-SQL)

Retorna o sistema e os UDTs registrados no banco de dados.

Exibições de gerenciamento dinâmico

As funções e exibições de gerenciamento dinâmico retornam informações do estado do servidor que podem ser usadas para monitorar a integridade da instância do servidor, diagnosticar problemas e ajustar o desempenho. Para obter mais informações, consulte Exibições e funções de gerenciamento dinâmico (Transact-SQL).

DMV

Descrição

sys.dm_clr_appdomains (Transact-SQL)

Fornece informações sobre cada domínio do aplicativo no servidor.

sys.dm_clr_loaded_assemblies (Transact-SQL)

Identifica cada assembly gerenciado registrado no servidor.

sys.dm_clr_properties (Transact-SQL)

Retorna informações sobre o CLR hospedado.

sys.dm_clr_tasks (Transact-SQL)

Identifica todas as tarefas CLR que estão em execução no momento.

sys.dm_exec_cached_plans (Transact-SQL)

Retorna informações sobre os planos de execução de consultas armazenados em cache pelo SQL Server para agilizar a execução de consultas.

sys.dm_exec_query_stats (Transact-SQL)

Retorna estatísticas de desempenho agregado dos planos de consulta em cache.

sys.dm_exec_requests (Transact-SQL)

Retorna informações sobre cada solicitação que está sendo executada no SQL Server.

sys.dm_os_memory_clerks (Transact-SQL)

Retorna todos os administradores de memória ativos no momento na instância do SQL Server, incluindo administradores de memória CLR.