Partage via


Créer une alerte à l’aide du niveau de gravité

s’applique à :SQL ServerAzure SQL Managed Instance

Important

Sur Azure SQL Managed Instance, la plupart, mais pas toutes les fonctionnalités de SQL Server Agent sont actuellement prises en charge. Pour plus d’informations, consultez différences T-SQL d’Azure SQL Managed Instance par rapport à SQL Server.

Cette rubrique explique comment créer une alerte Microsoft SQL Server Agent qui est déclenchée lorsqu’un événement d’un niveau de gravité spécifique se produit dans SQL Server à l’aide de SQL Server Management Studio ou de Transact-SQL.

Avant de commencer

Limitations et restrictions

  • SQL Server Management Studio offre un moyen graphique simple de gérer l’ensemble du système d’alerte et est la méthode recommandée pour configurer une infrastructure d’alerte.

  • Les événements générés avec xp_logevent se produisent dans la base de données master. Par conséquent, xp_logevent ne déclenche pas d’alerte, sauf si le @database_name de l’alerte est 'master' ou NULL.

  • Les niveaux de gravité de 19 à 25 envoient un message SQL Server au journal des applications Microsoft Windows et déclenchent une alerte. Les événements dont les niveaux de gravité sont inférieurs à 19 déclenchent des alertes uniquement si vous avez utilisé sp_altermessage, RAISERROR WITH LOG ou xp_logevent pour les forcer à écrire dans le journal des applications Windows.

Sécurité

Autorisations

Par défaut, seuls les membres du rôle serveur fixe sysadmin peuvent exécuter sp_add_alert.

Utilisation de SQL Server Management Studio

Pour créer une alerte à l’aide du niveau de gravité

  1. Dans 'Explorateur d’objets, cliquez sur le signe plus pour développer le serveur où vous souhaitez créer une alerte à l’aide du niveau de gravité.

  2. Cliquez sur le signe plus pour développer SQL Server Agent.

  3. Cliquez avec le bouton droit sur Alertes et sélectionnez Nouvelle alerte.

  4. Dans la boîte de dialogue Nouvelle alerte, dans la zone Nom, entrez un nom pour cette alerte.

  5. Dans la liste Type, sélectionnez alerte d’événement SQL Server.

  6. Sous définition d’alerte d’événement, dans la liste nom de la base de données, sélectionnez une base de données pour restreindre l’alerte à une base de données spécifique.

  7. En dessous de , les alertes seront déclenchées basées sur, cliquez sur Gravité , puis sélectionnez la gravité spécifique qui déclenchera l'alerte.

  8. Cochez la case correspondant à "Déclencher une alerte lorsque le message contient" pour restreindre l'alerte à une séquence de caractères particulière, puis entrez un mot clé ou une chaîne de caractères pour le texte Message. Le nombre maximal de caractères est de 100.

  9. Cliquez sur OK.

Utilisation de Transact-SQL

Pour créer une alerte à l’aide du niveau de gravité

  1. Dans Explorateur d’objets, connectez-vous à une instance du moteur de base de données.

  2. Dans la barre Standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter.

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

Pour plus d’informations, consultez sp_add_alert (Transact-SQL).