Compartir a través de


Create a WMI Event Alert

En este tema se describe cómo realizar una alerta de Agente SQL Server que se genera cuando se produce un evento de SQL Server específico supervisado por el proveedor WMI para eventos de servidor en SQL Server 2014 mediante SQL Server Management Studio o Transact-SQL.

Para obtener información sobre el uso del proveedor WMI para supervisar eventos SQL Server, vea Conceptos del proveedor WMI para eventos de servidor. Para más información sobre los permisos necesarios para recibir notificaciones de alertas de eventos de WMI, consulte Seleccionar una cuenta para el servicio Agente SQL Server. Para más información sobre WQL, consulte Usar WQL con el proveedor de WMI para eventos de servidor.

En este tema

Antes de empezar

Limitaciones y restricciones

  • SQL Server Management Studio proporciona una forma gráfica y fácil de administrar todo el sistema de alertas, y es el método recomendado para configurar una infraestructura de alertas.

  • Los eventos generados durante xp_logevent se producen en la base de datos maestra. Por tanto, xp_logevent no desencadena una alerta a menos que el valor de @database_name de la alerta sea is 'master' o NULL.

  • Solo se admiten los espacios de nombres WMI en el equipo que ejecuta el Agente SQL Server.

Seguridad

Permisos

De forma predeterminada, solo los miembros del rol fijo de servidor sysadmin pueden ejecutar sp_add_alert.

Uso de SQL Server Management Studio

Para crear una alerta de evento WMI

  1. En el Explorador de objetos , haga clic en el signo más para expandir el servidor donde desea crear una alerta de evento WMI.

  2. Haga clic en el signo más para expandir Agente SQL Server.

  3. Haga clic con el botón derecho en Alertas y seleccione Nueva alerta.

  4. En el cuadro de diálogo Nueva alerta , en el cuadro Nombre , escriba un nombre para esta alerta.

  5. Active la casilla Habilitar para que la alerta se pueda ejecutar. De forma predeterminada, la opción Habilitar está activada.

  6. En la lista Tipo , seleccione Alerta de evento WMI.

  7. En Definición de evento de alerta de WMI, en el cuadro Espacio de nombres , especifique el espacio de nombres WMI para la instrucción WQL (Lenguaje de consulta de WMI) que identifica qué evento WMI activará esta alerta.

  8. En el cuadro Consulta , especifique la instrucción WQL que identifica el evento al que responde esta alerta.

  9. Haga clic en Aceptar.

Usar Transact-SQL

Para crear una alerta de evento WMI

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra de Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.

    -- 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  
    

Para más información, consulte sp_add_alert (Transact-SQL).