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

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

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

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

Автоматическая обработка события называется предупреждением. Можно назначить предупреждение на одно или несколько событий, определив, каким образом должен реагировать агент 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. Дополнительные сведения об инструкции RAISERROR см. в разделе Использование инструкции RAISERROR.

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

    ПримечаниеПримечание

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

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

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

См. также

Справочник