J'ai une configuration de travail dans SQL Server 2008 qui envoie un e-mail de notification à un opérateur lorsque le travail échoue.
Question: Est-il possible de configurer un courrier électronique de notification envoyé à plusieurs opérateurs pour ce travail spécifique?
Je pense qu'une solution possible consiste à créer de nombreuses alertes pour la base de données pour chaque gravité donnée, mais j'espérais qu'il existait un moyen plus concis de procéder. Si je devais emprunter cette voie, quelles erreurs de gravité seraient probablement déclenchées par un travail en échec? (Je ne pense pas que j'aurais besoin de tous les 25 pour quelque chose comme ça)
Cela peut-il être fait via la commande sql pour ajouter plus d'opérateurs à prévenir en cas d'échec? Grâce à l'interface utilisateur, vous ne pouvez choisir qu'un seul opérateur, semble-t-il.
Question: Est-il possible de configurer un courrier électronique de notification envoyé à plusieurs opérateurs pour ce travail spécifique?
Je ne crois pas que ce soit possible.
Certes, si l’on regarde la structure de [msdb].[dbo].[sysjobs]
, les différentes colonnes operator_id
figurent dans ce tableau, ce qui conforterait l’idée selon laquelle 1 à plusieurs n’est pas possible.
Mais quelques alternatives
sysoperators
c'est bon pour les chaînes qui peuvent entrer dans nvarchar(100)
Si l'intention est que plusieurs personnes de votre organisation soient informées en cas d'échec d'un travail, vous pouvez modifier l'adresse électronique de l'opérateur pour inclure plusieurs boîtes aux lettres en les séparant par un point-virgule.
Je suppose que votre opérateur notifié s'appelle JobWatcher:
EXECUTE msdb.dbo.sp_update_operator
@name = N'JobWatcher',
@email_address = N'[email protected];[email protected]';
À présent, [email protected] et [email protected] recevront un courrier électronique en cas d'échec du travail.
La méthode la plus simple que j'utilise pour notifier plusieurs "OPERATORS"
sur "JOB FAILURE"
consiste à:
Dans SSMS>SQL Server Agent>Operators
, créez une nouvelle variable OPERATOR
ou EDIT
existante et ajoutez des adresses électroniques supplémentaires séparées par ;
dans la zone "E-mail name:"
.
La meilleure pratique serait de créer un groupe sur votre serveur de messagerie, d'envoyer les notifications au groupe, puis de contrôler le nombre de destinataires à partir du serveur de messagerie.
C'est donc ce que j'ai proposé comme solution de contournement si l'intention est que plusieurs personnes de votre organisation soient averties en cas d'échec d'un travail et qu'un groupe différent de plusieurs personnes réussisse.
Vous remarquerez que les étapes 1 à 3 sont les tâches normales que le travail planifié utilise comme vous le feriez pour votre tâche. Il peut y avoir autant d'étapes que nécessaire avant ces étapes, mais la dernière étape (étape 3) du processus doit indiquer les étapes «En cas de réussite» et «En cas d'échec» pour entrer dans des courriers électroniques séparés. De plus, tous les «En cas d'échec» doivent continuer sur votre «Email d'échec» comme indiqué ci-dessous. Ainsi, le groupe Echec reçoit les courriels et le travail échouera pour les enregistrements historiques.
L'option permettant de changer l'orientation des actions «En cas de réussite» et «En cas d'échec» apparaît dans l'onglet Avancé des étapes du travail.
Echec Email Step -General Property
Echec Email Step -Advance Property
Success Email Step - Propriété générale
Success Email Step - Propriété Advance
Pour les autres dans le besoin d'aide. Notifier plusieurs opérateurs avec des résultats différents
Veuillez utiliser le script ci-dessous pour augmenter la longueur des caractères de l'adresse e-mail .
USE mdsdb
GO
ALTER TABLE sysoperators
ALTER column email_address NVARCHAR(2000);