Eventi estesiExtended Events

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2014)sìDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2014)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Gli eventi estesi di SQL ServerSQL Server sono dotati di un'architettura estremamente scalabile e configurabile che consente agli utenti di raccogliere le informazioni necessarie per diagnosticare o identificare un problema legato alle prestazioni. Extended Events has a highly scalable and highly configurable architecture that allows users to collect as much or as little information as is necessary to troubleshoot or identify a performance problem.

Per altre informazioni sulle destinazioni degli eventi estesi, vedere:You can find more information about Extended Events at:

Vantaggi degli eventi estesi di SQL ServerSQL ServerBenefits of SQL ServerSQL Server Extended Events

Si tratta di un sistema di monitoraggio delle prestazioni leggero in cui vengono utilizzate poche risorse per le prestazioni.Extended Events is a light weight performance monitoring system that uses very few performance resources. Per gli eventi estesi sono disponibili due interfacce utente grafiche (Creazione guidata nuova sessione e Nuova sessione) per creare, modificare, visualizzare e analizzare i dati della sessione.Extended Events provides two graphical user interfaces (New Session Wizard and New Session) to create, modify, display, and analyze your session data.

Concetti degli eventi estesiExtended Events Concepts

SQL ServerSQL Server Gli eventi estesi sono basati su concetti esistenti, ad esempio un evento o un consumer di eventi, usano concetti di Event Tracing for Windows (ETW) e ne introducono di nuovi. Extended Events (Extended Events) builds on existing concepts, such as an event or an event consumer, uses concepts from Event Tracing for Windows, and introduces new concepts.

Nella seguente tabella vengono descritti i concetti negli eventi estesi.The following table describes the concepts in Extended Events.

ArgomentoTopic DescriptionDescription
Pacchetti degli eventi estesi di SQL ServerSQL Server Extended Events Packages Vengono descritti i pacchetti degli eventi estesi che contengono oggetti utilizzati per ottenere ed elaborare dati durante l'esecuzione di una sessione degli eventi estesi.Describes the Extended Events packages that contain objects that are used for obtaining and processing data when an Extended Events session is running.
Destinazioni degli eventi estesi di SQL ServerSQL Server Extended Events Targets Vengono descritti i consumer di eventi che possono ricevere dati durante una sessione dell'evento.Describes the event consumers that can receive data during an event session.
Motore degli eventi estesi di SQL ServerSQL Server Extended Events Engine Viene descritto il motore che implementa e gestisce una sessione degli eventi estesi.Describes the engine that implements and manages an Extended Events session.
Sessioni degli eventi estesi di SQL ServerSQL Server Extended Events Sessions Viene descritta la sessione Eventi estesi.Describes the Extended Events session.

Architettura degli eventi estesiExtended Events Architecture

Gli eventi estesi (Eventi estesi) costituiscono un sistema generale di gestione degli eventi per sistemi server.Extended Events (Extended Events) is a general event-handling system for server systems. L'infrastruttura degli eventi estesi supporta la correlazione di dati da SQL ServerSQL Servere in certe condizioni, la correlazione di dati dal sistema operativo e dalle applicazioni di database.The Extended Events infrastructure supports the correlation of data from SQL ServerSQL Server, and under certain conditions, the correlation of data from the operating system and database applications. Nel secondo caso, l'output degli eventi estesi deve essere indirizzato a ETW (Event Tracing for Windows) per correlare i dati degli eventi con i dati degli eventi delle applicazioni o del sistema operativo.In the latter case, Extended Events output must be directed to Event Tracing for Windows (ETW) to correlate the event data with operating system or application event data.

In tutte le applicazioni sono presenti punti di esecuzione utili sia all'interno che all'esterno di un'applicazione.All applications have execution points that are useful both inside and outside an application. All'interno dell'applicazione, l'elaborazione asincrona può essere accodata utilizzando informazioni raccolte durante l'esecuzione iniziale di un'attività.Inside the application, asynchronous processing may be enqueued using information that is collected during the initial execution of a task. All'esterno dell'applicazione, i punti di esecuzione forniscono utilità di monitoraggio con informazioni sulle caratteristiche relative al funzionamento e alle prestazioni dell'applicazione monitorata.Outside the application, execution points provide monitoring utilities with information about the behavioral and performance characteristics of the monitored application.

Gli eventi estesi supportano l'utilizzo di dati degli eventi all'esterno di un processo.Extended Events supports using event data outside a process. Questi dati sono in genere utilizzati da:This data is typically used by:

  • strumenti di analisi, ad esempio Traccia SQL e il Monitoraggio di sistema.Tracing tools, such as SQL Trace and System Monitor.

  • strumenti di log, ad esempio il registro eventi di Windows o il log degli errori di SQL ServerSQL Server .Logging tools, such as the Windows event log or the SQL ServerSQL Server error log.

  • Utenti che amministrano un prodotto o sviluppano applicazioni su un prodotto.Users administering a product or developing applications on a product.

    Gli aspetti chiave della progettazione degli eventi estesi sono i seguenti:Extended Events has the following key design aspects:

  • Il motore degli eventi estesi è agnostico in termini di eventi.The Extended Events engine is event agnostic. In questo modo, il motore è in grado di associare qualsiasi evento a qualsiasi destinazione perché il motore non è vincolato al contenuto dell'evento.This enables the engine to bind any event to any target because the engine is not constrained by event content. Per ulteriori informazioni sul motore degli eventi estesi, vedere SQL Server Extended Events Engine.For more information about the Extended Events engine, see SQL Server Extended Events Engine.

  • Gli eventi sono separati dai consumer di eventi chiamati destinazioni negli eventi estesi.Events are separated from event consumers, which are called targets in Extended Events. Ciò significa che qualsiasi destinazione può ricevere qualsiasi evento.This means that any target can receive any event. Inoltre, qualsiasi evento generato può essere utilizzato automaticamente dalla destinazione, che può scrivere nel log o fornire un contesto dell'evento supplementare.In addition, any event that is raised can be automatically consumed by the target, which can log or provide additional event context. Per ulteriori informazioni, vedere SQL Server Extended Events Targets.For more information, see SQL Server Extended Events Targets.

  • Gli eventi sono distinti dall'azione da intraprendere quando un evento si verifica.Events are distinct from the action to take when an event occurs. Di conseguenza, qualsiasi azione può essere associata a qualsiasi evento.Therefore, any action can be associated with any event.

  • I predicati consentono di filtrare dinamicamente i casi in cui i dati degli eventi devono essere acquisiti.Predicates can dynamically filter when event data should be captured. Questa possibilità garantisce maggiore flessibilità per l'infrastruttura degli eventi estesi.This adds to the flexibility of the Extended Events infrastructure. Per ulteriori informazioni, vedere SQL Server Extended Events Packages.For more information, see SQL Server Extended Events Packages.

    Gli eventi estesi possono generare in modo sincrono dati degli eventi (e in modo asincrono elaborare tali dati) il che fornisce una soluzione flessibile per la gestione degli eventi.Extended Events can synchronously generate event data (and asynchronously process that data) which provides a flexible solution for event handling. Inoltre, gli eventi estesi forniscono le funzionalità seguenti:In addition, Extended Events provides the following features:

  • Approccio unificato alla gestione degli eventi nel sistema server, consentendo agli utenti di isolare eventi specifici ai fini della risoluzione dei problemi.A unified approach to handling events across the server system, while enabling users to isolate specific events for troubleshooting purposes.

  • Supporto e integrazione con gli strumenti ETW esistenti.Integration with, and support for existing ETW tools.

  • Meccanismo di gestione degli eventi interamente configurabile, basato su Transact-SQLTransact-SQL.A fully configurable event handling mechanism that is based on Transact-SQLTransact-SQL.

  • Possibilità di monitorare dinamicamente i processi attivi, con un impatto minimo su tali processi.The ability to dynamically monitor active processes, while having minimal effect on those processes.

  • Sessione di integrità di sistema predefinita che viene eseguita senza effetti visibili sulle prestazioni.A default system health session that runs without any noticeable performance effects. Tale sessione consente di raccogliere dati di sistema che è possibile utilizzare per risolvere i problemi relativi alle prestazioni.The session collects system data that you can use to help troubleshoot performance issues. Per altre informazioni, vedere Utilizzare la sessione system_health.For more information, see Use the system_health Session.

Attività degli eventi estesiExtended Events Tasks

L'utilizzo di Management StudioManagement Studio o Transact-SQLTransact-SQL per eseguire funzioni, DMV e istruzioni DDL (Data Definition Language) Transact-SQLTransact-SQL o viste del catalogo consente di creare soluzioni per la risoluzione dei problemi relativi agli eventi estesi di SQL ServerSQL Server semplici o complesse per l'ambiente SQL ServerSQL Server .Using Management StudioManagement Studio or Transact-SQLTransact-SQL to execute Transact-SQLTransact-SQL Data Definition Language (DDL) statements, dynamic management views and functions, or catalog views, you can create simple or complex SQL ServerSQL Server Extended Events troubleshooting solutions for your SQL ServerSQL Server environment.

Descrizione dell'attivitàTask Description ArgomentoTopic
Utilizzare Esplora oggetti per gestire sessioni di eventi.Use the Object Explorer to manage event sessions. Gestire sessioni di eventi in Esplora oggettiManage Event Sessions in the Object Explorer
Viene descritto come creare una sessione di eventi estesi.Describes how to create an Extended Events session. Creare una sessione Eventi estesiCreate an Extended Events Session
Viene descritto come visualizzare e aggiornare i dati di destinazione.Describes how to view and refresh target data. Visualizzazione avanzata dei dati di destinazione da eventi estesi in SQL ServerAdvanced Viewing of Target Data from Extended Events in SQL Server
Viene descritto come utilizzare gli strumenti degli eventi estesi per creare e gestire sessioni di eventi estesi di SQL ServerSQL Server .Describes how to use Extended Events tools to create and manage your SQL ServerSQL Server Extended Events sessions. Strumenti degli eventi estesiExtended Events Tools
Viene descritto come alterare una sessione Eventi estesi.Describes how to alter an Extended Events session. Modificare una sessione Eventi estesiAlter an Extended Events Session
Viene descritto come ottenere informazioni sui campi associati agli eventi.Describes how to get information about the fields associated with the events. Recuperare i campi per tutti gli eventiGet the Fields for All Events
Viene descritto come individuare gli eventi disponibili nei pacchetti registrati.Describes how to find out what events are available in the registered packages. Visualizzare gli eventi per i pacchetti registratiView the Events for Registered Packages
Viene descritto come individuare le destinazioni degli eventi estesi disponibili nei pacchetti registrati.Describes how to determine what Extended Events targets are available in the registered packages. Visualizzare le destinazioni degli eventi estesi per i pacchetti registratiView the Extended Events Targets for Registered Packages
Viene descritto come visualizzare gli eventi e le azioni Eventi estesi equivalenti a ogni evento di Traccia SQL e alle colonne associate.Describes how to view the Extended Events events and actions that are equivalent to each SQL Trace event and its associated columns. Visualizzare gli eventi estesi equivalenti alle classi di evento di traccia SQLView the Extended Events Equivalents to SQL Trace Event Classes
Viene descritto come trovare i parametri che è possibile impostare quando si utilizza l'argomento ADD TARGET in CREATE EVENT SESSION o ALTER EVENT SESSION.Describes how to find the parameters you can set when you use the ADD TARGET argument in CREATE EVENT SESSION or ALTER EVENT SESSION. Recuperare i parametri configurabili per l'argomento ADD TARGETGet the Configurable Parameters for the ADD TARGET Argument
Viene descritto come convertire uno script di Traccia SQL esistente in una sessione Eventi estesi.Describes how to convert an existing SQL Trace script to an Extended Events session. Convertire uno script di Traccia SQL esistente in una sessione Eventi estesiConvert an Existing SQL Trace Script to an Extended Events Session
Viene descritto come determinare quali query mantengono il blocco, il piano della query e lo stack Transact-SQLTransact-SQL al momento del blocco.Describes how to determine which queries are holding the lock, the plan of the query, and the Transact-SQLTransact-SQL stack at the time the lock was taken. Individuare le query che mantengono attivi i blocchiDetermine Which Queries Are Holding Locks
Viene descritto come individuare l'origine dei blocchi che hanno effetti negativi sulle prestazioni del database.Describes how to identify the source of locks that are hindering database performance. Cercare gli oggetti con il maggior numero di blocchi acquisitiFind the Objects That Have the Most Locks Taken on Them
Viene illustrato come utilizzare gli eventi estesi con Analisi eventi per Windows al fine di monitorare l'attività del sistema.Describes how to use Extended Events with Event Tracing for Windows to monitor system activity. Monitorare l'attività del sistema mediante gli eventi estesiMonitor System Activity Using Extended Events
Uso delle viste catalogo e delle viste a gestione dinamica (DMV) per gli eventi estesiUsing the Catalog views and the Dynamic management views (DMVs) for extended events Istruzioni SELECT e JOIN da viste di sistema per eventi estesi in SQL ServerSELECTs and JOINs From System Views for Extended Events in SQL Server

Vedere ancheSee Also

Applicazioni livello dati Data-tier Applications
Supporto dell'applicazione livello dati per oggetti e versioni di SQL Server DAC Support For SQL Server Objects and Versions
Distribuire un'applicazione livello dati Deploy a Data-tier Application
Monitorare le applicazioni livello dati Monitor Data-tier Applications
Viste a gestione dinamica degli eventi estesi Extended Events Dynamic Management Views
Viste del catalogo degli eventi estesi (Transact-SQL) Extended Events Catalog Views (Transact-SQL)