如何监控与sql server的连接

时间:2017-10-11 08:39:12

标签: sql-server performance monitoring sql-server-2016

我使用以下查询来检查和监视与sql server的连接

SELECT loginame, nt_username, hostname, hostprocess
,[Connections Count]=COUNT(*) 
FROM master..sysprocesses
GROUP BY loginame, nt_username, hostname, hostprocess
ORDER BY COUNT(*) DESC, hostname

它有效,但我总是一行空白[loginame]连接数高,我想知道为什么是这样,它意味着什么,更重要的是如何找出< strong>谁在生成这些联系?

如果我在下面添加[program_name]

SELECT [loginame], nt_username, hostname, hostprocess
,[Client Name]=[program_name]   
,[Connections Count]=COUNT(*) 
FROM master..sysprocesses
GROUP BY loginame, nt_username, hostname, hostprocess, [program_name]   
ORDER BY COUNT(*) DESC, hostname

我可以看到[program_name]生成这些连接的EntityFramework,但为什么行没有[loginame]?它应该与connectionstring [user id]一起列出吗?这是在查询的输出中,在另一行中,具有预期的[loginame]和连接计数。

在实践中,似乎sql两次显示EntityFramework连接,一行显示空白[loginame],另一行显示预期[loginame],但为什么?

更新1

至于评论,使用此查询:

SELECT login_name ,COUNT(session_id) AS session_count   
FROM sys.dm_exec_sessions   
GROUP BY login_name;

我也得到一行空白的login_name

0 个答案:

没有答案