Sql server 给定Azure中SQL数据库上SQL查询的查询ID,是否有方法返回并跟踪谁发起了查询?

Sql server 给定Azure中SQL数据库上SQL查询的查询ID,是否有方法返回并跟踪谁发起了查询?,sql-server,azure,azure-sql-database,Sql Server,Azure,Azure Sql Database,假设已启用查询存储,则可以使用查询性能洞察查看查询ID、CPU使用情况、执行时间等。我的任务是将这些查询归因于共享数据库的部门。您建议如何跟踪发起查询的用户?query Store会在所有用户之间聚合数据,而不会尝试为您提供每个用户对正在发生的情况的视图。(这不是它的工作,而是关于性能管理和故障排除)。如果您想对谁执行了系统中的每个查询进行审计跟踪,那么运行Xevent会话是执行此操作的正确模式(跟踪完成的语句和登录事件,这样您就可以在以后要将事情链接到一起时将谁做了什么缝合在一起) 让查询存储

假设已启用查询存储,则可以使用查询性能洞察查看查询ID、CPU使用情况、执行时间等。我的任务是将这些查询归因于共享数据库的部门。您建议如何跟踪发起查询的用户?

query Store会在所有用户之间聚合数据,而不会尝试为您提供每个用户对正在发生的情况的视图。(这不是它的工作,而是关于性能管理和故障排除)。如果您想对谁执行了系统中的每个查询进行审计跟踪,那么运行Xevent会话是执行此操作的正确模式(跟踪完成的语句和登录事件,这样您就可以在以后要将事情链接到一起时将谁做了什么缝合在一起)


让查询存储区尝试跟踪每个用户的操作会导致在每个应用程序中始终处于启用状态的成本太高。

查询存储区会在所有用户之间聚合数据,而不会尝试为您提供每个用户对正在发生的情况的视图。(这不是它的工作,而是关于性能管理和故障排除)。如果您想对谁执行了系统中的每个查询进行审计跟踪,那么运行Xevent会话是执行此操作的正确模式(跟踪完成的语句和登录事件,这样您就可以在以后要将事情链接到一起时将谁做了什么缝合在一起)


如果让查询存储尝试跟踪每个用户的操作,那么在每个应用程序中始终处于打开状态的代价将太高。

您可以启用Azure SQL数据库的审核,并检查已执行的查询以及用户


您可以对Azure SQL数据库启用审核,并检查已执行的查询以及用户