Condividi tramite


Monitoraggio e risoluzione dei problemi relativi agli oggetti di database gestiti

Si applica a: SQL Server

In questo argomento vengono fornite informazioni sugli strumenti che è possibile usare per monitorare e risolvere i problemi relativi a oggetti e assembly di database gestiti in esecuzione in SQL Server.

Eventi di traccia del profiler

SQL Server fornisce notifiche di traccia ed eventi SQL per monitorare gli eventi che si verificano nel motore di database. Registrando gli eventi specificati, Traccia SQL consente di risolvere i problemi relativi a prestazioni, attività del database di controllo, raccogliere dati di esempio per un ambiente di test, eseguire il debug di istruzioni Transact-SQL e stored procedure e raccogliere dati per gli strumenti di analisi delle prestazioni. Per altre informazioni, vedere Traccia SQL ed eventi estesi.

Evento Descrizione
Classe di evento Assembly Load Utilizzato per monitorare le richieste di caricamento degli assembly (esito positivo ed errori).
Classe di evento SQL:BatchStarting, classe di evento SQL:BatchCompleted Fornisce informazioni sui batch Transact-SQL avviati o completati.
Classe di evento SP:Starting, classe di evento SP:Completed Usato per monitorare l'esecuzione di stored procedure Transact-SQL.
Classe di evento SQL:StmtStarting, classe di evento SQL:StmtCompleted Usato per monitorare l'esecuzione di routine CLR e Transact-SQL.

Contatori delle prestazioni

SQL Server fornisce oggetti e contatori che possono essere usati da Monitoraggio di sistema per monitorare l'attività nei computer che eseguono un'istanza di SQL Server. Un oggetto è una risorsa di SQL Server, ad esempio un blocco di SQL Server o un processo di Windows. Ogni oggetto contiene uno o più contatori che determinano diversi aspetti degli oggetti da monitorare. Per altre informazioni, vedere Usare oggetti di SQL Server.

Oggetto Descrizione
Oggetto CLR di SQL Server Tempo totale di esecuzione in CLR.

Contatori di Monitor di sistema di Windows (PERFMON.EXE)

Lo strumento Monitor di sistema di Windows (PERFMON.EXE) include diversi contatori delle prestazioni che è possibile utilizzare per monitorare le applicazioni di integrazione CLR. I contatori delle prestazioni CLR .NET possono essere filtrati tramite il nome di processo "sqlservr" per tenere traccia delle applicazioni di integrazione CLR attualmente in esecuzione.

Oggetto prestazione Descrizione
SqlServer:CLR Fornisce statistiche sulla CPU per il server.
Eccezioni CLR .NET Tiene traccia del numero di eccezioni generate al secondo.
Caricamento CLR .NET Fornisce informazioni su AppDomain e assembly caricati nel server.
Memoria CLR .NET Offre informazioni relative all'utilizzo della memoria in CLR. Questo oggetto può essere utilizzato per contrassegnare gli avvisi in caso di un utilizzo eccessivo di memoria.
Provider di dati .NET per SQL Server Tiene traccia del numero di connessioni e disconnessioni eseguite al secondo. Questo oggetto può essere utilizzato per monitorare il livello di attività del database.

Viste del catalogo

Le viste del catalogo restituiscono informazioni utilizzate dal motore di database di SQL Server. È consigliabile utilizzare tali viste perché rappresentano l'interfaccia più immediata per l'accesso ai metadati del catalogo e sono inoltre lo strumento più efficiente per ottenere, trasformare e presentare tali informazioni in forme personalizzate. Tutti i metadati del catalogo disponibili per gli utenti vengono esposti tramite le viste del catalogo. Per altre informazioni, vedere Viste del catalogo (Transact-SQL).

Vista del catalogo Descrizione
sys.assemblies (Transact-SQL) Restituisce informazioni sugli assembly registrati in un database.
sys.assembly_references (Transact-SQL) Identifica gli assembly che fanno riferimento ad altri assembly.
sys.assembly_modules (Transact-SQL) Restituisce informazioni su ogni funzione, stored procedure e trigger definito in un assembly.
sys.assembly_files (Transact-SQL) Restituisce informazioni sui file di assembly registrati nel database.
sys.assembly_types (Transact-SQL) Identifica i tipi definiti dall'utente specificati da un assembly.
sys.module_assembly_usages (Transact-SQL) Identifica gli assembly in cui sono definiti moduli CLR.
sys.parameter_type_usages (Transact-SQL) Restituisce informazioni sui parametri che sono tipi definiti dall'utente.
sys.server_assembly_modules (Transact-SQL) Identifica l'assembly in cui è definito un trigger CLR.
sys.server_triggers (Transact-SQL) Identifica i trigger DLL a livello di server, inclusi i trigger CLR.
sys.type_assembly_usages (Transact-SQL) Identifica gli assembly in cui sono specificati tipi definiti dagli utenti.
sys.types (Transact-SQL) Restituisce i tipi di sistema e definiti dall'utente registrati nel database.

DMV

Le funzioni e le viste a gestione dinamica restituiscono informazioni sullo stato del server che possono essere utilizzate per monitorare l'integrità di un'istanza del server, diagnosticare i problemi e ottimizzare le prestazioni. Per altre informazioni, vedere Funzioni e viste a gestione dinamica (Transact-SQL).

Vista a gestione dinamica Descrizione
sys.dm_clr_appdomains (Transact-SQL) Fornisce informazioni su ogni dominio applicazione nel server.
sys.dm_clr_loaded_assemblies (Transact-SQL) Identifica ogni assembly gestito registrato nel server.
sys.dm_clr_properties (Transact-SQL) Restituisce informazioni relative al CLR hosted.
sys.dm_clr_tasks (Transact-SQL) Identifica tutte le attività CLR attualmente in esecuzione.
sys.dm_exec_cached_plans (Transact-SQL) Restituisce informazioni sui piani di esecuzione delle query memorizzati nella cache da SQL Server per un'esecuzione di query più rapida.
sys.dm_exec_query_stats (Transact-SQL) Restituisce dati statistici aggregati sulle prestazioni dei piani di query memorizzati nella cache.
sys.dm_exec_requests (Transact-SQL) Restituisce informazioni su ogni richiesta in esecuzione all'interno di SQL Server.
sys.dm_os_memory_clerks (Transact-SQL) Restituisce tutti i clek di memoria attualmente attivi nell'istanza di SQL Server, inclusi i clek di memoria CLR.

Vedi anche

Concetti relativi alla programmazione dell'integrazione con CLR (Common Language Runtime)