Создание предупреждения о событии WMI
В этом разделе описывается, как агент SQL Server оповещение, которое создается при возникновении определенного события SQL Server, отслеживаемого поставщиком WMI для событий сервера в SQL Server 2014 с помощью SQL Server Management Studio или Transact-SQL.
Сведения об использовании поставщика WMI для мониторинга событий SQL Server см. в разделе Основные понятия поставщика WMI для событий сервера. Дополнительные сведения о разрешениях, которые требуются для получения уведомлений о событиях WMI, см. в разделе Выбор учетной записи для службы агента SQL Server. Дополнительные сведения о языке WQL см. в разделе Использование WQL с поставщиком WMI для событий сервера.
В этом разделе
Перед началом работы
Создание предупреждения о событии WMI с помощью:
Перед началом
Ограничения
SQL Server Management Studio предоставляет простой графический способ управления всей системой предупреждений и рекомендуется для настройки инфраструктуры предупреждений.
События, сформированные посредством процедуры xp_logevent , появляются в базе данных master. Поэтому xp_logevent не вызывает срабатывание предупреждения, если только значение аргумента @database_name для предупреждения не равно 'master' или NULL.
На компьютере, где запущен агент SQL Server, поддерживаются только пространства имен WMI.
Безопасность
Разрешения
По умолчанию только члены предопределенной роли сервера sysadmin могут выполнять процедуру sp_add_alert.
Использование среды SQL Server Management Studio
Создание предупреждения о событии WMI
В обозревателе объектов щелкните значок «плюс», чтобы развернуть сервер, на котором нужно создать предупреждение о событии WMI.
Щелкните знак "плюс", чтобы развернуть Агент SQL Server.
Щелкните правой кнопкой пункт Предупреждения и выберите Создать предупреждение.
В поле Имя диалогового окна Создание предупреждения введите имя этого предупреждения.
Установите флажок Включено , чтобы разрешить выдачу предупреждения. По умолчанию флажок Включить установлен.
В списке Тип выберите Предупреждение о событии WMI.
В разделе Определение условий предупреждений о событиях WMIв поле Пространство имен укажите пространство имен WMI для инструкций языка WQL, определяющее события WMI, которые будут приводить к возникновению этого предупреждения.
В поле Запрос укажите инструкцию WQL, определяющую событие, на которое реагирует предупреждение.
Нажмите кнопку OK.
Использование Transact-SQL
Создание предупреждения о событии WMI
В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
-- creates a WMI event alert that retrieves all event properties for any ALTER_TABLE event that occurs on table AdventureWorks2012.Sales.SalesOrderDetail -- This example assumes that the message 54001 already exists. USE msdb ; GO EXEC dbo.sp_add_alert @name = N'Test Alert 2', @message_id = 54001 @notification_message = N'Error 54001 has occurred on the Sales.SalesOrderDetail table on the AdventureWorks2012 database. Please see the following information...', @wmi_namespace = '\\.\root\Microsoft\SqlServer\ServerEvents\, @wmi_query = N'SELECT * FROM ALTER_TABLE WHERE DatabaseName = 'AdventureWorks2012' AND SchemaName = 'Sales' AND ObjectType='Table' AND ObjectName = 'SalesOrderDetail''; GO
Дополнительные сведения см. в разделе sp_add_alert (Transact-SQL).