Exchange Server 中的通訊協定記錄

適用於:yes-img-162016 yes-img-192019 yes-img-se訂閱版本

通訊協定記錄會記錄郵件傳遞的過程中,郵件伺服器之間以及傳輸管線中 Exchange 服務之間所發生的 SMTP 交談。 您可以使用通訊協定記錄來診斷郵件流程問題。 通訊協定記錄可記錄的 SMTP 交談會出現在下列位置:

  • 信箱伺服器之傳輸服務中的傳送連接器和接收連接器。

  • Edge Transport Server 之傳輸服務中的傳送連接器和接收連接器。

  • 在信箱伺服器的前端傳輸服務中接收連接器。

  • 信箱伺服器上傳輸服務中隱含和隱藏的組織內傳送連接器。

  • 信箱伺服器上前端傳輸服務中隱含和不可見的組織內部傳送連接器。

  • 信箱伺服器上信箱傳輸提交服務中隱含且隱藏的組織內傳送連接器。

  • 信箱伺服器上信箱傳輸傳遞服務中隱含和隱藏的信箱傳遞接收連接器。

根據預設,會在下列連接器上啟用通訊協定記錄:

  • 在信箱伺服器的前端傳輸服務中,預設的接收連接器名為 Default Frontend <ServerName> 。

  • 信箱伺服器上前端傳輸服務中隱含且不可見的傳送連接器。

預設情況下,所有其他連接器上的通訊協定記錄都是停用的。 您必須啟用或停用每個個別連接器上的通訊協定記錄。 您可以為 Exchange 伺服器上每個個別傳輸服務中的所有接收連接器或所有傳送連接器設定其他通訊協定記錄選項。 傳輸服務中的所有接收連接器共用相同的通訊協定記錄檔和通訊協定記錄選項。 這些檔案和選項與 Exchange 伺服器上相同傳輸服務中的「傳送連接器通訊協定記錄檔」和「通訊協定記錄檔」選項不同。

根據檔案大小和檔案存留期,Exchange 會使用循環記錄來根據檔案大小和檔案存留期來限制通訊協定記錄檔,以協助控制記錄檔所使用的硬碟空間。 若要設定通訊協定記錄,請參閱 設定通訊協定記錄。

通訊協定記錄檔的結構

通訊協定記錄檔預設會存在下列位置:

  • 在信箱伺服器上的前端傳輸服務:

    • 接收連接器: %ExchangeInstallPath%TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive

    • 傳送連接器: %ExchangeInstallPath%TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpSend

  • 信箱伺服器上的傳輸服務:

    • 接收連接器: %ExchangeInstallPath%TransportRoles\Logs\Hub\ProtocolLog\SmtpReceive

    • 傳送連接器: %ExchangeInstallPath%TransportRoles\Logs\Hub\ProtocolLog\SmtpSend

  • 信箱伺服器上的信箱傳輸遞送服務 (接收連接器) : %ExchangeInstallPath%TransportRoles\Logs\Mailbox\ProtocolLog\SmtpReceive\Delivery

  • 信箱伺服器上的信箱傳輸提交服務 (傳送 連接器) : %ExchangeInstallPath%TransportRoles\Logs\Mailbox\ProtocolLog\SmtpSend\Submission

    附註:在郵件傳遞至信箱之後所提交的副作用郵件的通訊協定記錄發生在 中。%ExchangeInstallPath%TransportRoles\Logs\Mailbox\ProtocolLog\SmtpSend\Delivery 例如,傳遞到信箱之郵件會觸發收件匣規則,將郵件重新導向其他收件者。

  • Edge Transport Server 上的傳輸服務:

    • 接收連接器: %ExchangeInstallPath%TransportRoles\Logs\Edge\ProtocolLog\SmtpReceive

    • 傳送連接器: %ExchangeInstallPath%TransportRoles\Logs\Edge\ProtocolLog\SmtpSend

記錄檔的命名慣例適用於 SENDyyyyMMddhh-nnnn.log 傳送連接器和 RECVyyyyMMddhh-nnnn.log 接收連接器。 預留位置代表下列資訊:

  • yyyyMMddhh 是建立記錄檔時的國際標準時間 (UTC) 日期。 yyyy = 年, MM = 月, dd = 日, hh = 小時。

  • nnnn 是從每小時值 1 開始的執行個體編號。

資訊會寫入記錄檔,直到檔案達到其大小上限為止。 然後,開啟具有遞增執行個體號碼的新記錄檔, (第一個記錄檔為 -1,下一個為 -2,依此類推) 。 當下列任一條件成立時,循環記錄會刪除最舊的記錄檔:

  • 記錄檔達到其存留期限上限。

  • 通訊協定記錄資料夾達到其大小上限。

通訊協定記錄檔是文字檔,其中包含以逗號分隔值檔案 (CSV) 格式的資料。 每個通訊協定記錄檔都有包含下列資訊的標頭:

  • #Software:值為 Microsoft Exchange Server。

  • #Version:建立郵件追蹤記錄檔的 Exchange 伺服器版本號碼。 該值使用的格式 15.01.nnnn.nnn為 。

  • #Log 類型:值為 或 SMTP Receive Protocol LogSMTP Send Protocol Log。

  • #Date:建立記錄檔時的 UTC 日期-時間。 UTC 日期 - 時間以 ISO 8601 日期 - 時間格式表示: yyyy-MM-ddThh:mm:ss.fffZ,其中 yyyy = 年, MM = 月, dd = 日,T 表示時間部分的開始, hh = 小時, mm = 分鐘, ss = 秒, fff = 一秒的分數,而 Z 表示祖魯語,這是表示 UTC 的另一種方式。

  • #Fields:通訊協定記錄檔中使用的逗號分隔欄位名稱。

通訊協定記錄檔中的欄位

通訊協定記錄會將每個 SMTP 通訊協定事件儲存在記錄中的單行上。 儲存在每一行的資訊會依欄位加以組織,而這些欄位會以逗點分隔。 下表說明通訊協定記錄中使用的欄位。

欄位名稱 描述
date-time 通訊協定事件的 UTC 日期及時間。 UTC 日期 - 時間以 ISO 8601 日期 - 時間格式表示: yyyy-MM-ddThh:mm:ss.fffZ,其中 yyyy = 年, MM = 月, dd = 日,T 表示時間部分的開始, hh = 小時, mm = 分鐘, ss = 秒, fff = 一秒的分數,而 Z 表示祖魯語,這是表示 UTC 的另一種方式。
connector-id 可辨別名稱 (與 SMTP 事件相關聯之連接器的 DN) 。
session-id GUID 值對於每個 SMTP 工作階段都是唯一的,但對於與該 SMTP 工作階段相關聯的每個事件來說卻相同。
序號- 在相同的 SMTP 工作階段中,從 0 開始且會依每個事件而遞增的計數器。
本機端點 SMTP 工作階段的本機端點。 這由 IP 位址和 TCP 連接埠號碼所組成,格式化為 <IP 位址>: <連接埠>。
遠端端點 SMTP 工作階段的遠端端點。 這由 IP 位址和 TCP 連接埠號碼所組成,格式化為 <IP 位址>: <連接埠>。
事件 代表通訊協定事件的單一字元。 有效值為:
+:連線
-:中斷連線
>:傳送
<:接收
*:資訊
data 與 SMTP 事件關聯的文字資訊。
context 可能與 SMTP 事件關聯之其他內容資訊。

一個代表傳送或接收單一電子郵件訊息的 SMTP 交談會產生多個 SMTP 事件。 每個事件都記錄在通訊協定記錄檔中的單獨行中。 Exchange 伺服器在任何給定時間都有許多 SMTP 交談正在進行。 這會從混合在一起的不同 SMTP 交談建立通訊協定記錄項目。 您可以使用 session-id 和 sequence-number 欄位依每個個別的 SMTP 會話來排序通訊協定記錄項目。