SQL Server Extended Events
SQL Server Extended Events were introduced with SQL Server 2008 as a light weight way to create customized monitoring of SQL Server.
Many people view SQL Server Extended Events as a replacement for Profiler/Server Side Trace. Extended Events are a lot more than that. Extended Events provide a set of methods for collecting different events from SQL Server and correlating those different events within a single tool. It’s possible to grab:
- Deadlocks + waits
- Waits + lock graph
- TempDB spill + query plan
For additional information about Extended Events, check out the following blog posts.
- Why use Extended Events? Jes Borland has her top three reasons here, and shows you what problems Extended Events can solve.
- When learning Extended Events, make sure to use the right wizard.
- Extended Events – It Doesn’t Have to be Hard – in which Jeremiah Peschka explains how to use SQL Server Extended Events to collect a blocked process report.
- Which Queries are Failing in my SQL Server? – Kendra Little demonstrates how to use the system health extended events session to locate failing queries.
- Finding that One Problem Query with Extended Events – Extended Events can be used to track a single query by the query hash or plan hash.
- Extended Events for Tracking Code Improvements – Kendra Little demonstrates how to use Extended Events to profile code improvements over time.
- Collecting Detailed Performance Measurements with Extended Events – Extended Events can be used to provide highly detailed performance metrics that include performance standard deviations, read and write metrics, and wait stats. All of this data is collected and aggregated over a single sample and broken out by time.