Как узнать, какой запрос ASP.NET находится за работающим запросом SQL? - PullRequest
1 голос
/ 10 ноября 2010

Я наблюдаю за моей коробкой SQL Server 2008 и вижу запрос, который выполняется давно.Я знаю, что он был запущен веб-сервером, но я хочу знать, какой запрос ASP.NET виноват.(Таким образом, я вижу, какой пользователь / IP стоит за ним.)

sys.dm_exec_requests дает мне идентификатор_сессии для запроса.Как узнать, какой запрос ASP.NET ожидает ответа от идентификатора сеанса?

Ответы [ 2 ]

2 голосов
/ 10 ноября 2010

Нет никаких отношений, если вы не создадите их.Вызов базы данных ничего не знает о сеансе ASP.NET.Указанный вами идентификатор сеанса - это сеанс SQL.

Самое простое решение - добавить трассировку с информацией о сеансе.

ОБНОВЛЕНИЕ Отслеживание:

1) Включить трассировку

2) Отслеживание начала вызова базы данных с идентификатором сеанса или идентификатором пользователя

3) Отслеживание конца вызова базы данных с идентификатором сеанса или идентификатором пользователя.Подсчитайте, сколько времени это заняло, и проследите это.

0 голосов
/ 10 ноября 2010

Если это только для целей отладки, вот взлом, который я использовал в прошлом. ConnectionString имеет доступный строковый параметр с именем «Приложение». В этот параметр вы можете поместить все, что захотите, и он будет отображаться на мониторе активности в SQL Management Studio.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...