Поделиться через


Наблюдение и обработка событий

SQL Server Агент производит мониторинг и автоматическую обработку различных событий: сообщений от SQL Server, некоторых условий производительности и событий инструментария управления Windows (WMI).

в этом разделе

Оповещения
Содержит сведения об именовании предупреждений и о выборе событий или условий производительности, которые обрабатываются предупреждениями.

Создание пользовательского события
Содержит сведения о том, как создать событие, отличное от стандартного для SQL Server.

Операторы
Содержит сведения о создании псевдонимов для администраторов, которым агент SQL Server рассылает уведомления при успешном или неуспешном выполнении заданий.

О мониторинге и обработке событий

Автоматические отклики на события называются предупреждениями. Можно назначить предупреждение на одно или несколько событий, определив, каким образом должен реагировать агент SQL Server на его возникновение. При обработке события предупреждение может отправить уведомление администратору, выполнить какое-либо задание, либо то и другое. Предупреждение может также переслать событие в журнал приложений Microsoft Windows на другом компьютере. Например, можно задать немедленное уведомление оператора при возникновении события с уровнем серьезности 19. Использование предупреждений позволяет администраторам базы данных более эффективно производить мониторинг и управление SQL Server.

SQL Server Агент обрабатывает только те события, для которых назначены предупреждения. Метод, применяемый агентом SQL Server для мониторинга событий, зависит от их типа.

Если предупреждение агента SQL Server определено для счетчика производительности, агент SQL Server непосредственно его отслеживает. Для отслеживания событий WMI агент SQL Server регистрирует запрос события WMI.

Для отслеживания сообщений SQL Serverагент SQL Server производит мониторинг журнала приложений Windows. SQL Server Агент может обрабатывать только те сообщения, которые появляются в этом журнале. По умолчанию SQL Server протоколирует в журнале приложений Windows следующие сообщения.

  • Ошибки из таблицы sysmessages с уровнем серьезности 19 и выше.

    Если необходимо протоколировать и другие ошибки из таблицы sysmessages, которые имеют уровень серьезности ниже 19, с помощью хранимой процедуры sp_altermessage можно обозначить такие ошибки как «протоколируемые всегда».

  • Инструкции RAISERROR, вызываемые при использовании синтаксиса WITH LOG.

    Этот способ рекомендуется для записи в журнал приложений Windows из экземпляра сервера SQL Server.

  • Любые события приложения, протоколируемые при помощи процедуры xp_logevent.

    Примечание

    Протоколирование событий приложений занимает место в журнале, в результате чего может произойти превышение его максимально допустимого размера. Чтобы предотвратить потери данных о событиях SQL Server, необходимо установить в качестве максимального размера журнала приложений Windows достаточно большое значение.

После того, как SQL Server записал сообщение в журнал, служба агента SQL Server сравнивает его с предупреждениями, определенными администратором SQL Server .

Независимо от источника события, служба агента SQL Server обрабатывает его, выполняя задачи, заданные в предупреждении для данного события.

См. также:

sp_altermessage (Transact-SQL)