Exchange Server 프로토콜 로깅

프로토콜 로깅은 메시지 배달의 일부로 메시징 서버 간 및 전송 파이프라인의 Exchange 서비스 간에 발생하는 SMTP 대화를 기록합니다. 프로토콜 로깅을 사용하여 메일 흐름 문제를 진단할 수 있습니다. 프로토콜 로깅으로 기록할 수 있는 SMTP 대화는 다음 위치에서 발생합니다.

  • 사서함 서버의 전송 서비스에 있는 송신 커넥터 및 수신 커넥터.

  • Edge 전송 서버의 전송 서비스에 있는 송신 커넥터 및 수신 커넥터.

  • 사서함 서버의 프런트 엔드 전송 서비스에서 커넥터를 받습니다.

  • 사서함 서버의 전송 서비스에 있는 암시적이고 보이지 않는 조직 내 송신 커넥터.

  • 사서함 서버의 프런트 엔드 전송 서비스에서 암시적이고 보이지 않는 조직 내 송신 커넥터입니다.

  • 사서함 서버의 사서함 전송 제출 서비스에 있는 암시적이고 보이지 않는 조직 내 송신 커넥터.

  • 사서함 서버의 사서함 전송 배달 서비스에 있는 암시적이고 보이지 않는 사서함 배달 수신 커넥터.

기본적으로 프로토콜 로깅은 다음 커넥터에서 사용하도록 설정됩니다.

  • 사서함 서버의 프런트 엔드 전송 서비스의 기본 프런트 엔드 <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 전송 서버의 전송 서비스:

    • 수신 커넥터: %ExchangeInstallPath%TransportRoles\Logs\Edge\ProtocolLog\SmtpReceive

    • 송신 커넥터: %ExchangeInstallPath%TransportRoles\Logs\Edge\ProtocolLog\SmtpSend

로그 파일에 SENDyyyymmddhh-nnnn.log 대한 명명 규칙은 송신 커넥터 및 RECVyyyymmddhh-nnnn.log 수신 커넥터에 대한 것입니다. 자리 표시자는 다음 정보를 표시합니다.

  • yyyymmddhh 는 로그 파일을 만든 UTC(협정 세계시) 날짜입니다. yyyy = year, mm = month, dd = day 및 hh = hour.

  • nnnn 은 매시간 값 1에서 시작하는 인스턴스 번호입니다.

정보는 파일이 최대 크기에 도달할 때까지 로그 파일에 기록됩니다. 그런 다음 증분 인스턴스 번호가 있는 새 로그 파일이 열립니다(첫 번째 로그 파일은 -1이고, 다음 로그 파일은 -2 등). 순환 로깅은 다음 조건 중 하나가 true이면 가장 오래된 로그 파일을 삭제합니다.

  • 로그 파일이 최대 수에 도달합니다.

  • 프로토콜 로그 폴더의 최대 크기에 도달합니다.

프로토콜 로그 파일은 쉼표로 분리된 값 파일(CSV) 형식의 데이터가 포함된 텍스트 파일입니다. 각 프로토콜 로그 파일에는 다음과 같은 정보가 들어있는 헤더가 있습니다.

  • #Software: 값은 입니다 Microsoft Exchange Server.

  • #Version: 메시지 추적 로그 파일을 만든 Exchange 서버의 버전 번호입니다. 값은 형식 15.01.nnnn.nnn을 사용합니다.

  • #Log-Type: 값은 또는 SMTP Send Protocol Log입니다SMTP Receive Protocol Log.

  • #Date: 로그 파일을 만든 UTC 날짜-시간입니다. UTC 날짜-시간은 ISO 8601 날짜-시간 형식으로 표시됩니다 . yyyy-mm-ddThh:mm:ss.fffZ, 여기서 yyyy = year, mm = month, dd = day, T는 시간 구성 요소의 시작을 나타내고, hh = hour, mm = minute, ss = second, fff = 초의 분수, Z는 UTC를 나타내는 또 다른 방법인 Zulu를 나타냅니다.

  • #Fields: 프로토콜 로그 파일에 사용되는 쉼표로 구분된 필드 이름입니다.

프로토콜 로그의 필드

프로토콜 로그는 각 SMTP 프로토콜 이벤트를 로그의 한 줄에 저장합니다. 각 줄에 저장된 정보는 필드로 구성되며 이러한 필드는 쉼표로 구분됩니다. 프로토콜 로그에 사용되는 필드는 다음 표에 설명되어 있습니다.

필드 이름 설명
date-time 프로토콜 이벤트의 UTC 날짜-시간입니다. UTC 날짜-시간은 ISO 8601 날짜-시간 형식으로 표시됩니다 . yyyy-mm-ddThh:mm:ss.fffZ, 여기서 yyyy = year, mm = month, dd = day, T는 시간 구성 요소의 시작을 나타내고, hh = hour, mm = minute, ss = second, fff = 초의 분수, Z는 UTC를 나타내는 또 다른 방법인 Zulu를 나타냅니다.
connector-id SMTP 이벤트와 연결된 커넥터의 DN(고유 이름)입니다.
session-id 각 SMTP 세션에 대해 고유하지만 해당 SMTP 세션과 연결된 모든 이벤트에 대해 동일한 GUID 값입니다.
sequence-number 같은 SMTP 세션 내에서 각 이벤트에 대해 0에서 시작하여 증가되는 카운터입니다.
local-endpoint SMTP 세션의 로컬 끝점입니다. IP 주소 및 IP 주소 형식의 TCP 포트 번호(포트>)<<>구성됩니다.
remote-endpoint SMTP 세션의 원격 끝점입니다. IP 주소 및 IP 주소 형식의 TCP 포트 번호(포트>)<<>구성됩니다.
이벤트 프로토콜 이벤트를 표시하는 단일 문자입니다. 유효한 값은 다음과 같습니다.
+:연결
-:분리
>:보내기
<:받기
*:정보
데이터 SMTP 이벤트와 연결된 텍스트 정보입니다.
컨텍스트 SMTP 이벤트와 연결될 수 있는 추가적인 문맥 정보입니다.

단일 전자 메일 메시지를 보내거나 받는 것을 나타내는 하나의 SMTP 대화는 여러 SMTP 이벤트를 생성합니다. 각 이벤트는 프로토콜 로그의 별도 줄에 기록됩니다. Exchange 서버에는 지정된 시간에 많은 SMTP 대화가 진행됩니다. 이렇게 하면 서로 혼합된 다양한 SMTP 대화에서 프로토콜 로그 항목이 만들어집니다. session-idsequence-number 필드를 사용하여 각 개별 SMTP 대화별로 프로토콜 로그 항목을 정렬할 수 있습니다.