Share via


sysmail_event_log (Transact-SQL)

Contient une ligne pour chaque message Windows ou SQL Server retourné par le système de messagerie de base de données (dans ce contexte, le terme « message » désigne un message de type message d'erreur, pas un message électronique). Configurez le paramètre Niveau de journalisation à l'aide de la boîte de dialogue Configurer les paramètres du système de l'Assistant Configuration de la messagerie de base de données ou de la procédure stockée sysmail_configure_sp, pour déterminer quels messages sont retournés.

Nom de colonne

Type de données

Description

Log_id

int

Identificateur d'éléments du journal.

event_type

varchar(11)

Type d'avis inséré dans le journal. Les valeurs possibles sont les suivantes : erreurs, avertissements, messages d'information, messages de succès et messages internes supplémentaires.

log_date

datetime

Date et l'heure de création de l'entrée du journal.

description

nvarchar(max)

Texte du message en cours d'enregistrement.

process_id

int

L'ID de processus du programme externe de messagerie de base de données. Cette valeur change en principe à chaque démarrage du programme externe de messagerie de base de données.

mailitem_id

int

Identificateur de l'élément de messagerie dans la file d'attente des messages. La valeur est NULL si le message n'est pas associé à un élément de courrier électronique spécifique.

account_id

int

account_id du compte associé à l'événement. La valeur est NULL si le message n'est pas associé à un compte spécifique.

last_mod_date

datetime

Date et heure de la dernière modification de la ligne.

last_mod_user

sysname

Dernier utilisateur qui a modifié la ligne. Pour les messages électroniques, il s'agit de l'utilisateur qui a envoyé le message. Pour les messages générés par le programme externe de messagerie de base de données, il s'agit du contexte utilisateur du programme.

Notes

En cas de dépannage de la messagerie de base de données, recherchez les événements associés à des échecs d'envoi de messages électroniques dans la vue sysmail_event_log. Certains messages, comme ceux signalant l'échec du programme externe de messagerie de base de données, ne sont pas associés à des messages électroniques spécifiques. Pour rechercher les erreurs associées à des messages électroniques spécifiques, trouvez la valeur de mailitem_id du message électronique qui a échoué dans la vue sysmail_faileditems, puis recherchez les messages associés à cette valeur de mailitem_id dans le journal sysmail_event_log. Lorsqu'une erreur est renvoyée par la procédure sp_send_dbmail, le message électronique n'est pas soumis au système de messagerie de base de données et l'erreur n'apparaît pas dans cette vue.

Lorsque les tentatives de remise d'un compte spécifique échouent, la messagerie de base de données conserve les messages d'erreur pendant les tentatives de reprises de comptes jusqu'à ce que la remise de l'élément de messagerie aboutisse ou échoue. En cas de réussite de la remise, toutes les erreurs accumulées sont consignées séparément dans le journal avec la valeur de account_id correspondante. Il se peut alors que des avertissements s'affichent, bien que le message électronique ait été envoyé. En cas d'échec de la remise, tous les avertissements précédents sont consignés dans un seul message d'erreur sans account_id, étant donné que tous les comptes ont échoué.

Autorisations

Vous devez être membre du rôle serveur fixe sysadmin ou du rôle de base de données DatabaseMailUserRole pour pouvoir accéder à cette vue. Les membres du rôle DatabaseMailUserRole qui ne sont pas membres du rôle sysadmin peuvent voir uniquement les événements liés aux messages électroniques qu'ils ont envoyés.