Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Importante
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 entre Azure SQL Managed Instance et SQL Server ou limitations des tâches de SQL Agent dans SQL Managed Instance.
Les événements générés par SQL Server sont entrés dans le journal des applications Windows. SQL Server Agent lit le journal des applications et compare les événements écrits dans les alertes que vous définissez.
Lorsque SQL Server Agent trouve une correspondance, il déclenche une alerte, qui est une réponse automatisée à un événement. Outre l'analyse des événements SQL Server , SQL Server Agent peut aussi analyser les conditions de performance, ainsi que les événements WMI (Windows Management Instrumentation).
Pour définir une alerte, vous spécifiez :
- Le nom de l'alerte.
- L'événement ou la condition de performance qui déclenche l'alerte.
- L'action qu'exécute SQL Server Agent en réponse à l'événement ou à la condition de performance.
Nommer une alerte
Chaque alerte doit posséder un nom. Les noms d’alerte doivent être uniques dans l’instance de SQL Server et ne peuvent pas dépasser 128 caractères.
Sélectionner un type d’événement
Une alerte est une réponse à un événement d'un type spécifique. Les alertes répondent aux types d'événements suivants :
- Événements SQL Server
- Conditions de performance SQL Server
- Événements WMI (Windows Management Instrumentation)
Le type d'événement détermine les paramètres que vous utilisez pour spécifier l'événement en question.
Spécifier un événement SQL Server
Vous pouvez préciser qu'une alerte doit avoir lieu en réponse à un ou plusieurs événements. Pour spécifier les événements qui déclenchent une alerte, utilisez les paramètres suivants :
Numéro d’erreur : SQL Server Agent déclenche une alerte lorsqu’une erreur spécifique se produit. Par exemple, vous pouvez spécifier le numéro d'erreur 2571 pour répondre aux tentatives non autorisées d'appels de commandes de console de base de données (DBCC).
Niveau de gravité : SQL Server Agent déclenche une alerte lorsqu’une erreur de gravité spécifique se produit. Ainsi, vous pouvez spécifier un niveau de gravité de 15 pour répondre aux erreurs de syntaxe dans les instructions Transact-SQL.
Base de données : SQL Server Agent déclenche une alerte uniquement lorsque l’événement se produit dans une base de données particulière. Cette option s'applique en plus du numéro d'erreur ou du niveau de gravité. Par exemple, si une instance SQL Server contient une base de données utilisée pour la production et une base de données utilisée pour la création de rapports, vous pouvez définir une alerte qui répond aux erreurs de syntaxe dans la base de données de production uniquement.
Texte de l’événement : SQL Server Agent déclenche une alerte lorsque l’événement spécifié contient une chaîne de texte particulière dans le message d’événement. Par exemple, vous pouvez définir une alerte en réponse aux messages contenant le nom d'une table donnée ou une contrainte déterminée.
Sélectionner une condition de performances
Vous pouvez préciser qu'une alerte doit avoir lieu en réponse à une condition de performances déterminée. Dans ce cas, vous indiquez le compteur de performances qui doit être surveillé, un seuil d'alerte et le comportement que doit afficher le compteur si l'alerte se produit. Pour définir une condition de performances, vous devez définir les éléments suivants dans la page SQL Server Général de la boîte de dialogue Nouvelle alerte ou Propriétés de l’alerte de Agent :
Objet : l’objet est la zone de performances à surveiller.
Compteur : un compteur est un attribut de la zone à surveiller.
Instance : l’instance SQL Server définit l’instance spécifique (le cas échéant) de l’attribut à surveiller.
Alerte si le compteur et Valeur
Indique le seuil d'alerte et le comportement qui déclenche l'alerte. Le seuil est une valeur numérique. Le comportement est l’un des suivants : tombe sous, devient égal àou s’élève au-dessus d’une valeur numérique déterminée. La valeur est un nombre qui décrit le compteur des conditions de performances. Par exemple, pour définir le déclenchement d’une alerte pour l’objet de performances SQLServer:Locks quand le Temps d’attente des verrous dépasse 30 minutes, vous choisiriez s’élève au-dessus et indiqueriez une valeur de 30.
Dans un autre exemple, vous pouvez spécifier qu’une alerte se produit pour l’objet de performances SQLServer :Transactions lorsque l’espace
tempdblibre est inférieur à 1 000 Ko. Pour définir cette valeur, accédez à l’espace libre du compteur dans tempdb (Ko), sélectionnez les valeurs ci-dessous, puis choisissez une valeur de1000.Les données de performances sont régulièrement échantillonnées, ce qui peut entraîner un léger décalage (de quelques secondes) entre l'atteinte du seuil et le déclenchement de l'alerte de performance.
Une variable de journal des événements qui stocke le nom du serveur est limitée à 32 caractères. Par conséquent, si la taille combinée de votre nom d’hôte et du nom d’instance est supérieure à 32 caractères, vous pouvez obtenir l’erreur suivante :
Warning,[466] Failed to copy server name LONGNAMESQLSERV\LONGINSTANCENAME while generating performance counter alerts.
Sélectionner un événement WMI
Vous pouvez préciser qu'une alerte doit avoir lieu en réponse à un événement WMI déterminé. Pour sélectionner un événement WMI, vous devez définir les éléments suivants dans la page SQL Server Général de la boîte de dialogue Nouvelle alerte ou Propriétés de l’alerte de Agent :
Espace de noms : SQL Server Agent s’inscrit en tant que client WMI à l’espace de noms WMI fourni pour rechercher des événements.
Requête : SQL Server Agent utilise l’instruction WQL (Windows Management Instrumentation Query Language) fournie pour identifier l’événement spécifique.
Tâches associées
| Action | SQL Server Management Studio | Transact-SQL |
|---|---|---|
| Créer une alerte en fonction d’un numéro de message | Créer une alerte utilisant un numéro d'erreur | sp_add_alert |
| Créer une alerte en fonction des niveaux de gravité | Créer une alerte à l’aide du niveau de gravité | sp_add_alert |
| Créer une alerte basée sur un événement WMI | Créer une alerte d’événement WMI | sp_add_alert |
| Définir la réponse à une alerte | Définir la réponse à une alerte | sp_add_notification |
| Créer un message d’erreur d’événement défini par l’utilisateur | sp_addmessage | |
| Modifier un message d’erreur d’événement défini par l’utilisateur | sp_altermessage | |
| Supprimer un message d’erreur d’événement défini par l’utilisateur | sp_dropmessage | |
| Désactiver ou réactiver une alerte | Désactiver ou réactiver une alerte | sp_update_alert |