Create an Alert Using Severity Level

Se aplica a:SQL ServerAzure SQL Managed Instance

Importante

En Azure SQL Managed Instance, actualmente son compatibles la mayoría de las características del Agente SQL Server. Consulte Diferencias entre T-SQL de Azure SQL Managed Instance y SQL Server para más información.

En este tema, se describe cómo crear una alerta del Agente Microsoft SQL Server que se genere cuando se produzca un evento con un nivel de gravedad específico en SQL Server mediante SQL Server Management Studio o Transact-SQL.

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.

  • Con los niveles de gravedad entre 19 y 25 se envía un mensaje de SQL Server al registro de la aplicación de Microsoft Windows y se desencadena una alerta. Los eventos con niveles de gravedad inferiores a 19 solo desencadenarán alertas si ha utilizado sp_altermessage, RAISERROR WITH LOG o xp_logevent para forzar que se escriban en el registro de la aplicación Windows.

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 con nivel de gravedad

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

  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. En la lista Tipo , seleccione Alerta de evento de SQL Server.

  6. En Definición de evento de alerta, en la lista Nombre de la base de datos , seleccione una base de datos para restringir la alerta a una base de datos específica.

  7. En Las alertas se mostrarán en función de, haga clic en Gravedad y seleccione la gravedad específica que generará la alerta.

  8. Active la casilla correspondiente a Mostrar alerta cuando el mensaje contenga para restringir la alerta a una secuencia de caracteres en particular y, a continuación, escriba una palabra clave o una cadena de caracteres en el Texto del mensaje. El número máximo de caracteres es 100.

  9. Haga clic en Aceptar.

Usar Transact-SQL

Para crear una alerta con nivel de gravedad

  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.

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

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