Похоже, вам нужно только получить эту информацию в течение короткого периода времени.В течение этого периода sproc может вызываться большое количество раз, но это конечный период.
Если это так, возможно, вы могли бы где-нибудь регистрировать вызовы sproc?Если у вас есть контроль над sproc-кодом, вы можете выполнить регистрацию там.Один из подходов состоит в том, чтобы создать специальную таблицу для этой цели, добавить INSERT в эту таблицу в начале или конце существующего sproc и подождать, пока некоторые записи накопятся в таблице .
В зависимости от особенностей, вы можете создать столбец в пользовательской таблице регистрации для каждого параметра sproc.
Тогда у вас будет достаточно информации об использовании sproc за период времени, в течение которого вы ведете запись.
Учитывая данные, накопленные в таблице, вы можете запросить, чтобы найтинаиболее частые значения параметров, которые включают пользователи, приложения, веб-страницы и т. д., даты и время начала и окончания вызова sproc и все, что вы регистрируете.
Это не повлечет за собой каких-либо изменений в коде приложения, и оно может быть полностью устранено после завершения устранения неполадок.Таким образом, кроме неизбежного снижения производительности всех этих журналов, цена этого подхода невысока.
Редактировать: этот подход будет альтернативой для пользователей, у которых нет специальных разрешений, необходимых для выполнения запросов DMV к таблицамтакие как sys.dm_exec_query_stats.Во многих магазинах получение таких разрешений, особенно для производственных баз данных, не представляется возможным для разработчиков.