Chapter 49. XEVENT: the next event infrastructure
SQL Server gives many options for monitoring and troubleshooting, such as SQL Server Profiler and SQL Trace, Dynamic Management Views and Functions, the default trace, trace flags, performance counters, deadlock graphs, ring buffers, blocked process reports, DBCC commands, various logs, and others. So you may wonder why anyone would need a new event infrastructure such as Extended Events. It may sound shocking, but the diversity of the tools is the main reason. Having so many techniques available makes it difficult to maintain the code for each new release of SQL Server. That’s from a developer’s point of view. For the rest of us—customers, consultants, users, and even for Microsoft support—it’s challenging to obtain relevant performance or troubleshooting information. Why? Because the information needed usually comes from multiple sources. Furthermore, each of the tools available before SQL Server 2008 has its own strengths and weaknesses.
Think about monitoring SQL Server using SQL Server Profiler: it’s graphical, easy to use, and can be used in correlation with PerfMon logs, but the performance overhead can be pretty serious.
Extended Events is the potential event infrastructure for the next releases of SQL Server. This is my personal opinion, and the role of this chapter is to support this opinion with facts.