Как определить вызывающую сторону хранимой процедуры из Sproc

У меня есть устаревшая хранимая процедура, которую больше нельзя вызывать из кода, но какая-то система все еще вызывает ее. Это производственный сервер, поэтому у меня очень ограничен косвенный доступ к нему для выполнения диагностики.

Есть ли способ определить машину, которая вызывает конкретную хранимую процедуру из sproc? Что-то вроде @@CallingMachineIP или @@CallingMachineName


person Chris Ballance    schedule 10.09.2010    source источник


Ответы (2)


@@SPID должен дать вам текущий идентификатор процесса.

Затем,

select * from master.dbo.sysprocesses where spid = @@SPID

Вы можете получить то, что вам нужно, из одной из этих колонок.

person Brandon    schedule 10.09.2010

person    schedule
comment
+1 - И если у вас есть несколько разных приложений, вызывающих процедуру (анализатор запросов, Crystal Reports и т. д.), вы также можете выбрать program_name, чтобы сузить ее. - person LittleBobbyTables - Au Revoir; 10.09.2010