Я создал таблицу отслеживаемых хранимых процедур в наших базах данных, надеясь использовать ее для очистки процедур, которые мы больше не используем. Я установил это несколько месяцев назад, и теперь я готов начать очищение. В таблицах используются sys.procedures
и sys.dm_exec_procedure_stats
DMVs в SQL Server 2008 R2, и задание обновляет статическую таблицу каждые 10 минут, 24 часа в деньОтслеживание хранимой процедуры
Я просматривал список своих процедур и встречал пару, которые я знаю, что факт был запущен совсем недавно. Тот, который я нашел, запускается как шаг 2 задания, но sys.dm_exec_procedure_stats
, похоже, не содержит никакой записи о его запуске, но процедура на шаге 1 появилась в правильное время. Я проверил историю заданий, и оба шага 1 и 2 работали без проблем.
Единственное различие, которое я вижу, состоит в том, что процедура на шаге 2 включает в себя «Предупреждение: нулевое значение исключается агрегированием или другой операцией SET», тогда как первый шаг не выполняется. Означает ли это, имеет значение, будет ли процедура появляться в sys.dm_exec_procedure_stats
?
Надеюсь, кто-то может помочь!
Дубликат [Last Run Дата на хранимая процедура в MS SQL] (http://stackoverflow.com/questions/595742/last-run-date-on-a-stored-procedure-in-ms-sql) –
Я не верю, что это дубликат вопрос, так как другой вопрос - как отслеживать, тогда как я уже отслеживаю. Проблема в том, что в таблице sys.dm_exec_procedure_stats есть процедура, которая не отображается, и связано ли это с предупреждением NULL. Спасибо –