Enabling extended events on a upgraded instance

The Ops team recently upgraded to SQL Sentry 2023 from a much older version which used SQL Trace by default.

1. It doesn't seem like simply upgrading to SQL Sentry is making use of Extended Events (XE). We don't see any XE sessions (see image) and we still see old SQL Trace running.

2. He updated the database entry per the docs and restarted the service. Still no XE sessions. 


Any ideas? Does he need to modify a config file? Does he need to remove and re-add the target server?

  • Did you need to restart the monitoring service again for "Collect Trace Events = False" to take effect? What is the XE session I should expect to see in SSMS?

  • Hey there  !

    It looks like that documentation might be a little old...I'll get someone on it right away!  I'd recommend deleting that row from the dbo.FeatureFlag table.  It won't hurt anything to leave it, but it is no longer a flag that is used.

    The current method to switch from SQL Trace to Extended Events on recent versions of SQL Sentry is to modify the "Trace Engine" setting to "Extended Events (XE)".  It looks like that's been done at the Global level, so you're good there.

    The "Collect Trace Events" option will control if SQL statements are collected at all, which I believe you want to do.  I would recommend reverting that setting back to True to collect Top SQL statements.

    If you've already restarted ALL of your SentryOne Monitoring Service services after making that settings change, and you still don't see XE sessions created on the targets, you might consider unwatching the instance, then re-watching it.  That should help to reinitialize the objects on that target.  Assuming all goes well, you should see an Extended Event named "S1_Core_...." created on that target.

    If the XE still doesn't appear, you may want to confirm that the account that the Monitoring Service is running under has sysadmin permissions on that target.

    Let me know how it goes!


  • Hey there  !

    Changing the "Collect Trace Events" setting should be dynamic and not require a restart of the monitoring service(s).  See my response to the main question for more information.

  • Finally getting back to this. I had the Trace Engine set to Legacy, not sure if I'd tried changing it previously (or maybe it wasn't there until a service or client restart after I set the feature flag?). Now that I've switched it, I definitely see the XE sessions on my watched instances. Thanks!