Create an Alert Using Severity Level

Область применения: SQL Server Управляемый экземпляр SQL Azure

Внимание

В Управляемом экземпляре Azure SQL в настоящее время поддерживается большинство функций агента SQL Server (но не все). Подробные сведения см. в статье Различия в T-SQL между Управляемым экземпляром SQL Azure и SQL Server.

В этой статье описано, как с помощью среды SQL Server Management Studio или Transact-SQL создать предупреждение агента Microsoft SQL Server, которое выдается при наступлении в SQL Server события определенного уровня серьезности.

Перед началом

Ограничения

  • SQL Server Management Studio предоставляет простой графический способ управления всей системой предупреждений и рекомендуется для настройки инфраструктуры предупреждений.

  • События, сформированные посредством процедуры xp_logevent , появляются в базе данных master. Поэтому xp_logevent не вызывает срабатывание предупреждения, если только значение аргумента @database_name для предупреждения не равно 'master' или NULL.

  • При уровнях серьезности от 19 до 25 сообщение SQL Server направляется в журнал Windows-приложений (Майкрософт) и вызывает срабатывание предупреждения. События с уровнями серьезности меньше 19 вызовут срабатывание предупреждения только в случае, если были использованы sp_altermessage, RAISERROR WITH LOG или xp_logevent , чтобы принудительно осуществить запись этих событий в журнал приложения Windows.

Безопасность

Разрешения

По умолчанию только члены предопределенной роли сервера sysadmin могут выполнять процедуру sp_add_alert.

Использование среды SQL Server Management Studio

Создание предупреждения с указанием уровня серьезности

  1. В обозревателе объектов щелкните знак «плюс», чтобы развернуть сервер, на котором необходимо создать предупреждение по степени серьезности.

  2. Щелкните знак "плюс", чтобы развернуть Агент SQL Server.

  3. Щелкните правой кнопкой пункт Предупреждения и выберите Создать предупреждение.

  4. В поле Имя диалогового окна Создание предупреждения введите имя этого предупреждения.

  5. В списке Тип выберите Предупреждение о событии SQL Server.

  6. В разделе Определение предупреждения о событиив списке Имя базы данных выберите базу данных для установки ограничения на предупреждение относительно конкретной базы банных.

  7. В разделе Предупреждение будет выдано на основаниивыберите пункт Серьезность , а затем выберите степень серьезности для предупреждения.

  8. Чтобы ограничить сообщение определенной последовательностью символов, установите флажок в поле Создавать предупреждение, если сообщение содержит и введите ключевое слово или строку символов в поле Текст сообщения. Максимальное количество символов равно 100.

  9. Щелкните OK.

Использование Transact-SQL

Создание предупреждения с указанием уровня серьезности

  1. В обозревателе объектов подключитесь к экземпляру ядра СУБД.

  2. На стандартной панели выберите пункт Создать запрос.

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

    -- Adds an alert (Test Alert) that notifies the
    -- Alert Operator via email when an error with a 
    -- severity of 23 is detected.
    
    -- Assumes that the Alert Operator already exists 
    -- and that database mail is configured.
    
    USE msdb ;  
    GO  
    
    EXEC dbo.sp_add_alert @name=N'Test Alert', 
      @message_id = 0, 
      @severity = 23, 
      @enabled = 1, 
      @include_event_description_in = 1
    ;
    GO
    
    EXEC dbo.sp_add_notification @alert_name=N'Test Alert',
      @operator_name=N'Alert Operator',
      @notification_method=1
    ;
    GO
    
    

Дополнительные сведения см. в разделе sp_add_alert (Transact-SQL).