sysmail_event_log(Transact-SQL)
적용 대상: SQL Server
데이터베이스 메일 시스템에서 반환된 각 Windows 또는 SQL Server 메시지에 대해 하나의 행을 포함합니다. (이 컨텍스트의 메시지는 전자 메일 메시지가 아니라 오류 메시지와 같은 메시지를 참조합니다.) 데이터베이스 메일 구성 마법사의 시스템 매개 변수 구성 대화 상자 또는 sysmail_configure_sp 저장 프로시저를 사용하여 로깅 수준 매개 변수를 구성하여 반환되는 메시지를 결정합니다.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
Log_id | int | 로그에 있는 항목의 식별자입니다. |
event_type | varchar(11) | 로그에 삽입되는 알림 유형입니다. 가능한 값은 오류, 경고, 정보 메시지, 성공 메시지 및 추가 내부 메시지입니다. |
log_date | 날짜/시간 | 로그 항목이 만들어진 날짜 및 시간입니다. |
description | nvarchar(max) | 기록되는 메시지의 텍스트입니다. |
process_id | int | 데이터베이스 메일 외부 프로그램의 프로세스 ID입니다. 일반적으로 데이터베이스 메일 외부 프로그램이 시작될 때마다 변경됩니다. |
mailitem_id | int | 메일 큐의 메일 항목 식별자입니다. 메시지가 특정 전자 메일 항목과 관련이 없는 경우 NULL입니다. |
account_id | int | 이벤트와 관련된 계정의 account_id. 메시지가 계정과 관련이 없으면 NULL입니다. |
last_mod_date | 날짜/시간 | 행의 마지막 수정 날짜 및 시간입니다. |
last_mod_user | sysname | 행을 마지막으로 수정한 사용자입니다. 전자 메일의 경우 메일을 보낸 사용자입니다. 데이터베이스 메일 외부 프로그램이 생성한 메시지의 경우 프로그램의 사용자 컨텍스트입니다. |
설명
데이터베이스 메일 문제를 해결할 때 sysmail_event_log 보기에서 전자 메일 오류와 관련된 이벤트를 검색합니다. 데이터베이스 메일 외부 프로그램의 실패와 같은 일부 메시지는 특정 전자 메일과 연결되지 않습니다. 특정 전자 메일과 관련된 오류를 검색하려면 sysmail_faileditems 보기에서 실패한 전자 메일의 mailitem_id 조회한 다음 sysmail_event_log 해당 mailitem_id 관련된 메시지를 검색합니다. sp_send_dbmail 오류가 반환되면 전자 메일이 데이터베이스 메일 시스템에 제출되지 않고 이 보기에 오류가 표시되지 않습니다.
개별 계정 배달 시도가 실패하면 데이터베이스 메일 메일 항목 배달이 성공하거나 실패할 때까지 다시 시도하는 동안 오류 메시지를 보관합니다. 최종 성공의 경우 누적된 모든 오류는 account_id 포함하여 별도의 경고로 기록됩니다. 이에 따라 전자 메일이 보내진 경우에도 경고가 표시될 수 있습니다. 최종 배달 실패의 경우 모든 계정이 실패했기 때문에 모든 이전 경고가 account_id 없이 하나의 오류 메시지로 기록됩니다.
사용 권한
이 보기에 액세스하려면 sysadmin 고정 서버 역할 또는 DatabaseMailUserRole 데이터베이스 역할의 멤버여야 합니다. sysadmin 역할의 멤버가 아닌 DatabaseMailUserRole 의 멤버는 제출하는 전자 메일에 대한 이벤트만 볼 수 있습니다.