我正在寻找一种方法来检查,如果一个特定的电子邮件使用队列sp_send_dbmail
最终被成功从我们的Exchange服务器发送。 我已经看过了系统表msdb.dbo.sysmail_mailitems
和msdb.dbo.sysmail_log
。 msdb.dbo.sysmail_log
似乎是更有帮助的两个; 具体地,其description
列。 从我目前所进行的试验,似乎只要出现错误,在以下格式的消息显示在description
栏:
邮件无法发送,因为邮件服务器故障的收件人。 (发送使用帐户3(2012-11-01T11邮件:28:04)异常消息:无法发送邮件到邮件服务器(邮箱不可用服务器响应为:5.7.1无法中继的thisemail@email.com) 。)
这是封闭与共享相同的其他行process_id
。 对于封闭记录的说明
DatabaseMail进程启动
和
DatabaseMail进程正在关闭
如果一封电子邮件发送成功,同样的2行被记录在表中,除了与他们之间没有封闭行。
所以,如果我有一个成功的发送,以下出现在表
如果我有一个发送失败,日志记录本
是否有如何,如果发送失败可以被记录的条目或是否发送成功,其他情况? 例如,它可能是可能有4行的条目的发送(2包围,当它被启动,并且当它关闭,2封闭陈述电子邮件,说明发送成功)。 我发现,从上面列出的模式分歧没有日志记录,但想确保在此基础上假设之前我写的逻辑。