MTA 日志文件以 ASCII 文本书写。默认情况下,每个日志文件条目都包含八个或九个字段,如下面示例中所示。
19-Jan-1998 19:16:57.64 l tcp_local E 1 adam@sesta.com rfc822;marlowe@siroe.com marlowe@siroe.com
日志条目显示:
创建条目的日期和时间(在此示例中为 19-Jan-1998 19:16:57.64)。
源通道的通道名称(在此示例中为 l)。
目标通道的通道名称(在此示例中为 tcp_local)。(对于 SMTP 通道,当启用 LOG_CONNECTION 时,加号 (+) 表示入站到 SMTP 服务器;减号 (-) 表示通过 SMTP 客户机出站。)
条目的类型(在此示例中为 E);请参见表 21–2。
邮件的大小(在此示例中为 1)。默认表示为千字节(使用 MTA 选项文件中的 BLOCK_SIZE 关键字可以更改此默认值)。
信封 From: 地址(在此示例中为 adam@sesta.com)。请注意带有空信封 From: 地址的邮件(例如通知邮件),此字段为空白。
原始格式的信封 To: 地址(在此示例中为 marlowe@siroe.com)。
信封 To: 地址(在此示例中为 marlowe@siroe.com)。
传送状态(仅适用于 SMTP 通道)。
条目 |
说明 |
---|---|
B |
发送至 SMTP 服务器的错误命令。收件人地址字段将包含被拒绝的命令,而诊断字段将包含 SMTP 服务器所给出的响应。MTA 通道选项 (MAX_B_ENTRIES) 用于控制将记录到给定会话中的错误命令的数量。默认值为 10。 |
BA |
验证成功执行后事务中较早的错误命令。 |
BS |
TLS 成功启动后的错误命令。 |
BSA |
TLS 和 AUTH 的错误命令。 |
D |
成功出队列 |
DA |
使用 SASL(验证)成功出队列 |
DS |
使用 TLS(安全)成功出队列 |
DSA |
使用 TLS 和 SASL(安全和验证)成功出队列 |
E |
入队列 |
EA |
使用 SASL(验证)成功入队列 |
ES |
使用 TLS(安全)成功入队列 |
ESA |
使用 TLS 和 SASL(安全和验证)成功入队列 |
J |
拒绝尝试入队列(被从通道程序拒绝) |
K |
拒绝收件人邮件。如果发件人请求 NOTIFY=NEVER DSN 标志设置、邮件超时,或者手动返回邮件(例如,imsimta qm "delete" 命令始终为每个收件人生成 "K" 记录,而 qm "return" 命令则生成 "K" 记录而非 "R" 记录)。这表示不会根据发件人自己的请求向发件人发送通知。 与 "K" 记录相比,"R" 记录也为相同的拒绝/超时类型,但在 "R" 中系统会根据失败邮件生成一封新的通知邮件(返回给原发件人)。 |
Q |
出队列临时故障 |
R |
尝试出队列时收件人地址被拒绝(被主通道程序拒绝),或生成故障/退回邮件 |
V |
事务被异常中止时显示的警告消息。每个加入队列的收件人地址都有一个 "V" 记录。 |
W |
发送的警告消息以通知原发件人邮件尚未发送,但仍在重试的队列中。 |
Z |
已成功发送给一些收件人,但临时未成功发送给此收件人;所有收件人的原始邮件文件已出队列,并在该位置将此收件人和其他未成功发送的收件人的新邮件文件加入队列 |
SMTP 通道的 LOG_CONNECTION + 或 - 条目 |
|
C |
已关闭连接。将出现诊断字段。写入 connection.log_current(或者 mail.log_current,如果使用了单个日志文件)。用于记录关闭连接的原因。尤其是,如果关闭连接是由于达到了某些会话断开连接限制,则诊断字段中将显示此事实。 |
O |
已打开连接 |
U |
记录 SMTP 验证的成功信息和失败信息。格式与其他 O 和 C 条目相同。尤其是,相同的应用程序和传输信息字段以相同的顺序显示。如果已知用户名,则它将记录在用户名字段中。LOG_CONNECTION MTA 选项的位 7(值 128)将控制此过程。 |
X |
已拒绝连接 |
Y |
建立连接之前尝试连接失败 |
I |
已收到 ETRN 命令 |
LOG_CONNECTION、LOG_FILENAME、LOG_MESSAGE_ID、LOG_NOTARY、LOG_PROCESS 和 LOG_USERNAME 在 MTA 选项文件中全部启用后,格式将发生变化,如下面示例中所示。(此样例日志条目行已因版式原因而换行;实际日志条目将显示在一个物理行。)
19-Jan-1998 13:13:27.10 HOSTA 2e2d.2.1 tcp_local l E 1 service@siroe.com rfc822;adam@sesta.com adam 276 /imta/queue/l/ZZ01IWFY9ELGWM00094D.00 <01IWFVYLGTS499EC9Y@siroe.com> inetmail siroe.com (siroe.com [192.160.253.66]) |
除了上面已讨论的那些字段外,其中的附加字段是:
运行通道进程的节点的名称(在本示例中为 HOSTA)。
进程 ID(以十六进制表示),其后是句号(点)字符和计数。如果此为多线程通道条目(即,tcp_* 通道条目),则在进程 ID 和计数之间还会显示线程 ID。在本示例中,进程 ID 是 2e2d.2.1。
邮件的 NOTARY(传送收件人请求)标志,表示为整数(在本示例中为 276)。
MTA 队列区域中的文件名(在本示例中为 /imta/queue/l/ZZ01IWFY9ELGWM00094D.00)。
邮件 ID(在本示例中为 <01IWFVYLGTS499EC9Y@siroe.com)。
正在执行的进程的名称(在本示例中为 inetmail)。在 UNIX 上,对于分发程序进程(例如 SMTP 服务器),此名称通常为 inetmail(除非已使用 SASL)。
连接信息(在本示例中为 siroe.com (siroe.com [192.160.253.66]))。连接信息由发送系统或通道名称组成,例如由 HELO/EHLO 线路上的发送系统表示的名称(对于外来 SMTP 邮件),或加入通道队列的官方主机名(对于其他类型的通道)。对于 TCP/IP 通道,发送系统的“真实”名称(即由 DNS 反向查找和/或 IP 地址报告的符号名称)也可在 ident* 通道关键字的控制下被报告在扩号内;请参见IDENT 查找。此示例假定使用其中一个关键字,例如使用默认的 identnone 关键字,该关键字选择显示在 DNS 中的名称和 IP 地址。