I saw an interesting thread recently in the SQL Server Community Slack where someone posted about extended events (XE). They were asking about whether XE would have a problem with a situation. The problem wasn’t so interesting, but a quote from one of the responders was. The quote was:
The best time to have learned Extended Events was ten years ago. The second best time is today.
I love that, and I tend to agree. If you need to trace what is happening inside your SQL Server, you need to learn how to capture information with Extended Events. That’s the best way to dig into the details of how queries affect your system.
It’s also hard. I know that whenever I need to use it, which is rare, I have to dig through some articles and docs to understand what thing I need to do. Even having some scripts hasn’t helped because it’s a sufficiently complex system that unless I use it regularly, I forget how all the filters, targets, events, etc. work.
On one hand, I think it’s amazing, and on the other, it’s too hard to use. Even when I try the Extended Events profiler, it’s so different from Profiler that I find myself getting frustrated at times trying to dig through the information.
I am curious how many of you think XE is easy to configure and if you use it often. What are the places it works well? For those of you that don’t use XE or haven’t learned, why not? Do you not have to trace what’s happening with queries in some detail? Or do you have another way that you dive deep into your system? Or do you not have the need?
If you do want to learn more, we have a short Stairway Series on Extended Events to help you get started, as well as a few other articles. If you’re an expert, we’d love a few more on using XE in specific situations.
Steve Jones
Listen to the podcast at Libsyn, Spotify, or iTunes.
Note, podcasts are only available for a limited time online.


I don’t know how common this is today but with the cloud push I imagine it’s more common today than 10 years ago. In our case we can’t use XE’s b/c we don’t have the required ALTER ANY EVENT permission. With what appears to be an overwhelming push to move users to the cloud I think RMDB’s like MS need to look at how to provide these tools that have traditional be the realm of the SQL Admin to lower level users in a way to doesn’t also violate any security measures. In our case we have DBO level access so no access the required permissions to use XEs
LikeLike
Is this in a PaaS service like RDS or Azure SQL DB?
I agree. There are some things, like trace, where I think users can have rights to data, but not to admin stuff. They ought to be able to access things like events.
LikeLike
Steve – It’s a private cloud (not Amazon or Microsoft) we access via VPN connection.
LikeLike
That ought to be an easy automation thing. Submit a ticket, get traces set up. Self-serve start/stop/retrieve automation
LikeLike