Sun Java System Messaging Server 6 2005Q4 관리 설명서

여러 로그 파일에서 메일 추적

시스템에서 메일이 전달되는 방법과 여러 로그 파일에 정보가 기록되는 시점은 아래에 설명되어 있습니다. 이러한 설명을 통해 Message Server의 로그 파일을 사용하여 문제를 해결하는 방법을 이해할 수 있습니다. 그림 8–2를 참조하십시오.

  1. 원격 호스트가 메시징 호스트의 TCP 소켓에 연결하여 SMTP 서비스를 요청합니다.

  2. MTA 디스패처가 요청에 응답하고 메시징 호스트의 SMTP 서비스에 연결을 넘겨 줍니다.

    MTA는 모듈식으로 설계되므로 Job Controller 및 SMTP 서비스 디스패처를 포함하는 일련의 프로세스로 구성됩니다. 디스패처는 받는 TCP 연결을 가져와 SMTP 서비스로 보냅니다. SMTP 서비스는 메일을 디스크의 채널 영역에 기록합니다. SMTP 서비스는 메일의 봉투 매개 변수(예: 보낸 사람 및 받는 사람)를 인식합니다. 시스템의 구성 항목에서 시스템이 속한 대상 채널을 알려줍니다.

  3. 디스패처가 스레드를 포크했고 특정 IP 주소에서 받는 연결에 대해 스레드를 사용할 수 있게 만들었다고 dispatcher.log 파일에 기록합니다.

  4. SMTP 서버가 원격 호스트에서 SMTP 서버에 연결하여 메일을 보낼 때 발생한 일에 대한 기록을 tcp_smtp_server.log 파일에 기록합니다. 이 로그 파일은 디스패처가 호스트 IP의 SMTP 서버로 보낼 때 작성됩니다.

  5. SMTP 서버가 tcp_intranet과 같은 채널 프로그램의 디스크에 있는 대기열 영역에 메일을 기록하고 Job Controller에 알립니다.

  6. Job Controller가 채널 프로그램에 연결합니다.

  7. 채널 프로그램이 메일을 전달합니다.

    채널마다 고유한 로그 파일이 있습니다. 그러나 이러한 로그에서는 일반적으로 채널의 시작 및 중지를 표시합니다. 추가 정보를 얻으려면 채널에 대한 디버그 수준을 활성화해야 합니다. 그러나 이로 인해서 시스템이 느려지고 진행 중인 문제가 더 모호해질 수 있으므로 실제 문제가 발생했을 경우에만 디버그 수준을 활성화해야 합니다.


    주 –

    효율성을 위해 채널이 기존 프로세스에 대해 이미 실행 중인 경우 시스템은 새 메일이 들어와도 새 채널 프로세스를 만들지 않습니다. 현재 실행 중인 프로세스에서 새 메일을 가져갑니다.


  8. 메일이 다른 호스트, 다른 TCP 연결 등의 다음 홉으로 전달됩니다. 이 정보는 connection.log 파일에 기록됩니다.

    SMTP 서버가 디스크의 대기열 영역에 메일을 기록하는 것과 동시에 메일을 담당하는 채널이 mail.log_current 또는 mail.log 파일에 레코드를 기록합니다. 이 레코드는 메일이 대기열에 포함된 날짜와 시간, 보낸 사람, 받는 사람 등의 정보를 보여 줍니다. 자세한 내용은 MTA 메일 로깅 예를 참조하십시오. 메일을 추적하는 데 가장 유용한 파일은 mail.log_current 파일입니다.