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

로깅 개요

로깅은 시스템이 시스템 서비스에 대한 시간이 기록되고 레이블이 지정된 정보를 제공하는 수단입니다. 로깅에서는 시스템의 현재 스냅샷뿐 아니라 기록 보기도 제공합니다.

Messaging Server 로그 파일을 이해하고 사용하면 다음을 수행할 수 있습니다.

예를 들어, 사용자 수가 증가하여 더 많은 디스크 저장소를 사이트에 추가해야 할 경우 Messaging Server 로그 파일을 사용하여 시스템 수요의 증가 비율을 확인하고 필요한 새 디스크 저장소의 양을 계획할 수 있습니다.

또한 Messaging Server 로그를 사용하여 하루 동안의 메시징 패턴을 파악할 수 있습니다. 매일 최고 부하가 발생하는 시점을 파악하면 용량 계획을 수행하는 데 도움이 됩니다.

또한 로깅은 사용자 문제를 해결하는 데 도움이 됩니다. 예를 들어, 사용자가 예상한 메일 메시지를 받지 못할 경우 Messaging Server 로깅 기능을 사용하여 사용자의 메일 메시지를 추적할 수 있습니다. 이렇게 함으로써 메일이 자동으로 필터링되어 SPAM 폴더로 보내졌기 때문에 도착하지 않았음을 확인할 수도 있습니다.

로깅 데이터의 유형

일반적으로 로깅은 두 가지 유형의 정보를 제공합니다.

대부분의 경우 Messaging Server 로깅에서는 작업 데이터를 제공합니다. 이 작업 데이터에는 메일이 시스템에 들어온 날짜와 시간, 메일의 보낸 사람 및 받는 사람, 메일이 디스크에 기록된 시간, 이후에 메일이 디스크에서 제거되고 사용자의 메일함에 삽입된 시간 등의 정보가 포함됩니다.

또한 Messaging Server 로깅에서는 이벤트 로깅 데이터도 제공합니다. 이벤트 로깅 데이터를 얻으려면 다른 로그 파일에서 여러 항목을 모아야 합니다. 그런 다음 메시지 아이디와 같은 고유한 상수를 사용하여 시스템을 통해 지점 간에 전달된 메일의 주기를 검색하고 연관시킬 수 있습니다.

Messaging Server 로그 파일의 유형

Messaging Server 로깅은 세 가지 유형의 로그 파일로 구성됩니다.

  1. MTA 로그. 앞에서 설명한 Message Transfer Agent에 대한 작업 데이터를 제공합니다.

  2. 오류 로그. 이 오류 로그는 MTA 디버그 로그이며 MTA 하위 구성 요소 로그(즉, Job Controller, 디스패처 등)입니다.

  3. 메일 저장소 및 서비스 로그.http 서버, mshttpd, imap, pop 서비스 및 Admin 서비스의 메일을 제공합니다. 이 로그의 형식은 처음 두 로그 유형과 다릅니다.

다음 표에는 다양한 유형의 로그 파일이 나열되어 있습니다. 기본적으로 로그 파일은 msg_svr_base/data/log 디렉토리에 있습니다. 각 로그 파일의 유형을 개별적으로 사용자 정의하고 볼 수 있습니다.

표 21–1 Messaging Server 로그 파일

로그 파일 유형 

로그 파일 설명 

기본 이름 

MTA 

날짜 및 시간 정보, 대기열에 포함 및 대기열에서 제외 정보 등을 비롯하여 MTA를 통과하는 메일 트래픽에 대한 정보를 보여 줍니다. 

mail.log, mail.log_current, mail.log_yesterday 

연결 

전자 메일을 보내기 위해 이 시스템에 연결하는 원격 시스템(MTA)을 포함합니다. 

connection.log 

카운터 

채널별로 송수신된 메일에 관한 메일 추세를 포함합니다. 

counters 

Job Controller 

마스터, Job Controller, 보낸 사람 및 대기열에서 제외 채널 프로그램에 대한 데이터를 포함합니다.  

job_controller.log 

디스패처 

디스패처에 관한 오류를 포함합니다. 디스패처 디버깅을 설정하면 정보가 증가합니다. 

dispatcher.log 

채널 

채널에 관한 오류를 기록합니다. master_debug 및 slave_debug 키워드는 채널 디버깅을 설정하여 채널 로그 파일의 자세한 표시 수준을 늘립니다. 정보 수준과 유형은 option.dat에서 여러 *_DEBUG MTA 옵션을 사용하여 제어합니다. 

channelname_master.log*(예: tcp_local_master.log*)

channelname_slave.log*(예: tcp_local_slave.log*)

Admin 

Administration Server에 의해 콘솔과 Messaging Server 사이에 수행되는(대부분 CGI 프로세스를 통해 수행됨) 통신에 관련된 기록 이벤트가 포함됩니다.  

admin, admin.sequenceNum.timeStamp

IMAP 

이 서버의 IMAP4 활동에 관련된 기록 이벤트가 포함됩니다. 

imap, imap.sequenceNum.timeStamp

POP 

이 서버의 POP3 활동에 관련된 기록 이벤트가 포함됩니다. 

pop, pop.sequenceNum.timeStamp

HTTP 

이 서버의 HTTP 활동에 관련된 기록 이벤트가 포함됩니다. 

http, http.sequenceNum.timeStamp

기본값 

명령줄 유틸리티 및 기타 프로세스 등과 같은 이 서버의 다른 활동에 관련된 기록 이벤트가 포함됩니다. 

default, default.sequenceNum.timeStamp

msgtrace 

메시지 저장소에 대한 추적 정보를 포함합니다. 파일이 매우 빠른 속도로 아주 커질 수 있습니다. 적절히 모니터하십시오. 

msgtrace 

watcher 

프로세스 실패와 응답하지 않는 서비스(표 4–4 참조)를 모니터하고 특정 실패를 나타내는 오류 메시지를 기록합니다.

watcher 

여기서

sequenceNum - 로그 파일 디렉토리에 있는 다른 로그 파일과 비교하여 이 로그 파일의 생성 순서를 지정하는 정수를 지정합니다. 일련 번호가 높은 로그 파일은 이 번호가 낮은 로그 파일보다 최신 파일입니다. 일련 번호는 롤오버되지 않습니다. 즉 서버 설치부터 시작하여 서버 수명 동안 계속 증가합니다.

timeStamp - 파일 생성 날짜 및 시간을 지정하는 큰 정수를 지정합니다. 이 값은 1970년 1월 1일 자정부터 시작하여 계산한 초의 수인 표준 UNIX 시간으로 표시됩니다.

예를 들어 imap.63.915107696라는 이름의 로그 파일은 1998년 12월 31일 12:34:56 PM에 생성되었으며 IMAP 로그 파일의 디렉토리에 만들어진 63번째 로그 파일입니다.

타임스탬프를 사용하여 개방형 일련 번호 지정의 조합을 통해, 분석을 위한 파일의 회전, 만료 및 선택에 더 큰 유연성을 가질 수 있습니다. 자세한 내용은 서비스 로깅 옵션 정의 및 설정을 참조하십시오.

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

시스템에서 메일이 전달되는 방법과 여러 로그 파일에 정보가 기록되는 시점은 아래에 설명되어 있습니다. 이러한 설명을 통해 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 파일입니다.