Прошло много времени с тех пор, как вы просили, но, возможно, вы еще не все выяснили.
Я не знаю ни одного способа записи функции классификатора, хотя вы, вероятно, могли бы использовать SQL Server Profiler. Вы можете убедиться, что он работает правильно, посмотрев на что-то, кроме монитора производительности.
Вы можете использовать простой запрос, чтобы увидеть, как выглядят SUSER_NAME () и APP_NAME (), по крайней мере для вашего соединения:
SELECT
SUSER_NAME(), APP_NAME();
(Да, SUSER_NAME () будет содержать имя домена для учетных записей, использующих проверку подлинности Windows.)
Вы можете запросить DMV (Dynamic Management Vies), чтобы показать вам текущие пользовательские соединения вместе с пулом регулятора ресурсов и назначенной ему рабочей группой:
SELECT
Sess.session_id,
Sess.program_name,
Sess.host_name,
Sess.login_name,
Sess.nt_domain,
Sess.nt_user_name,
Sess.original_login_name,
RG_WG.pool_id,
RG_P.name as Pool_Name,
Sess.group_id,
RG_WG.name as WorkGroup_Name
FROM sys.dm_exec_sessions Sess
INNER JOIN sys.dm_resource_governor_workload_groups RG_WG
ON Sess.group_id = RG_WG.group_id
INNER JOIN sys.dm_resource_governor_resource_pools RG_P
ON RG_WG.pool_id = RG_P.pool_id
WHERE
Sess.is_user_process = 1;