sysmail_event_log (Transact-SQL)
データベース メール システムから返される、Windows または SQL Server のメッセージごとに 1 行のデータを格納します。 ここでのメッセージとは、電子メール メッセージではなくエラー メッセージなどのメッセージを指します。返されるメッセージを指定するには、データベース メール構成ウィザードの [システム パラメーターの構成] ダイアログ ボックスまたは sysmail_configure_sp ストアド プロシージャを使用して、ログ記録レベル パラメーターを構成します。
列名 |
データ型 |
説明 |
---|---|---|
Log_id |
int |
ログ内のアイテムの識別子。 |
event_type |
varchar(11) |
ログに挿入された通知の種類。 可能な値は、エラー、警告、情報メッセージ、成功メッセージ、およびその他の内部メッセージです。 |
log_date |
datetime |
ログ エントリが作成された日時。 |
description |
nvarchar(max) |
記録されたメッセージのテキスト。 |
process_id |
int |
データベース メール外部プログラムのプロセス ID。 通常、データベース メール外部プログラムが起動するたびに変更されます。 |
mailitem_id |
int |
メール キュー内のメール アイテムの識別子。 メッセージが特定の電子メール アイテムに関係していない場合は NULL になります。 |
account_id |
int |
イベントに関係するアカウントの account_id。 メッセージが特定のアカウントに関係していない場合は NULL になります。 |
last_mod_date |
datetime |
行が最後に変更された日時。 |
last_mod_user |
sysname |
行を最後に変更したユーザー。 電子メールの場合は、メールを送信したユーザーになります。 データベース メール外部プログラムにより生成されたメッセージの場合は、プログラムのユーザー コンテキストになります。 |
説明
データベース メールのトラブルシューティングでは、sysmail_event_log ビューで、電子メールの失敗に関係するイベントを検索できます。 データベース メール外部プログラムの失敗を示すメッセージなど、メッセージによっては、特定の電子メールと関係していない場合があります。 特定の電子メールに関係するエラーを検索するには、sysmail_faileditems ビューで、失敗した電子メールの mailitem_id を確認し、次に sysmail_event_log でその mailitem_id に関係するメッセージを検索します。 sp_send_dbmail でエラーが返された場合は、データベース メール システムに電子メールは送信されず、このビューにエラーは表示されません。
個々のアカウントで配信試行が失敗した場合は、再試行の間、メール アイテムの配信が成功または失敗するまで、データベース メールでエラー メッセージが保持されます。 配信が成功した場合、それまで蓄積されたエラーは個別の警告として、account_id と共にログに記録されます。 これにより、電子メールが送信された場合も警告が表示されることがあります。 配信が失敗した場合、それまでの警告はすべて 1 つのエラー メッセージとしてログに記録されます。この場合、すべてのアカウントが失敗しているので、個々の account_id は記録されません。
権限
このビューを使用するには、sysadmin 固定サーバー ロールまたは DatabaseMailUserRole データベース ロールのメンバーであることが必要です。 DatabaseMailUserRole のメンバーであっても、sysadmin ロールのメンバーでない場合は、自分が送信した電子メールのイベントだけを参照できます。
関連項目
参照
sysmail_faileditems (Transact-SQL)