Sun Java System Instant Messaging 7.2 관리 설명서

Log4j를 사용한 Instant Messaging 로깅 관리

Instant Messaging을 설치할 때 log4j 구성 파일용 템플리트 파일(log4j.conf.template )이 im-svr-base/lib 디렉토리에 설치됩니다. 설치 후에 configure 유틸리티를 실행하면 이 템플리트가 im-cfg-base 디렉토리에 log4j 구성 파일(log4j.conf)을 만드는 데 사용됩니다. 이 구성 파일은 log4j로 생성된 로그 파일을 저장하는 위치, 다양한 구성 요소에 적용할 로깅 수준, 출력 구문 및 생성할 로그 파일 등을 결정하는 데 사용됩니다.

log4j 로거를 사용하여 Instant Messaging 로그 파일을 생성하기 위해 이 절에서 다루는 내용은 다음과 같습니다.

Instant Messaging 구성 요소 로깅 수준에서 설명한 로깅 수준은 log4j 로거에서 사용됩니다.

log4j에 대한 자세한 내용과 로그 파일 항목 구성(예: 크기, 백업 수 등)에 대한 지침은 Apache Logging Services 웹 사이트를 참조하십시오.

Instant Messaging log4j 구성 파일(log4j.conf) 위치

iim.confiim.log4j.config 매개 변수를 수정하여 log4j 구성 파일 log4j.conf의 위치를 변경할 수 있습니다. 이 매개 변수 값을 지정하지 않으면 로거가 im-cfg-base에서 찾습니다. 해당 디렉토리에 log4j 구성 파일이 없으면 iim.conf의 로깅 매개 변수를 사용하여 log4j 방식이 아닌 로그를 생성합니다.

im-cfg-base 찾기에 대한 내용은 Instant Messaging 서버 디렉토리 구조를 참조하십시오.

Instant Messaging log4j 로그 파일 구문

configure 유틸리티는 log4j 구성 파일 템플리트(log4j.conf.template)의 내용에 따라 log4j 구성 파일(log4j.conf)을 생성합니다. 예 13–1은 log4j 템플리트를 보여 줍니다. 이 템플리트에서


예 13–1 log4j 템플리트 파일


log4j.logger.xmppd=INFO, A1
# DEFAULT TO RollingFileAppender
log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.file=${logdir}/xmppd.log
log4j.appender.A1.append=true
log4j.appender.A1.maxBackupIndex=7
log4j.appender.A1.maxFileSize=5mb
# More example appenders..
# Straight to console..
# log4j.appender.A1=org.apache.log4j.ConsoleAppender
# log4j.appender.A1.ImmediateFlush=true
# Rollover at midnight..
# log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
# log4j.appender.A1.DatePattern='.'yyyy-MM-dd
# log4j.appender.A1.file=${logdir}/xmppd.log
# log4j.appender.A1.ImmediateFlush=true
# log4j.appender.A1.append=true
# Send to SMTP..
# log4j.appender.A1=org.apache.log4j.SMTPAppender

# PATTERN LAYOUT AND OPTIONS
# DEFAULT TO PatternLayout
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
# For full dates..
log4j.appender.A1.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n
# IM traditional output format..
#log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p %c [%t] %m%n
# More example layouts
# XMLLayout for chainsaw consumption
# log4j.appender.A1.layout=org.apache.log4j.xml.XMLLayout
# TTCCLayout for NDC information

# log4j.appender.A1.layout=org.apache.log4j.xml.TTCCLayout
# log4j.appender.A1.layout.DateFormat=ISO8601
# log4j.appender.A1.layout.TimeZoneID=GMT-8:00
# log4j.appender.A1.layout.CategoryPrefixing=false
# log4j.appender.A1.layout.ThreadPrinting=false
# log4j.appender.A1.layout.ContextPrinting=false

# Now we list logger/appender/layout for the other default loggers, but
# only the defaults..
log4j.logger.iim_wd=ERROR, A2
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.file=${logdir}/iim_wd.log
log4j.appender.A2.append=true
log4j.appender.A2.maxBackupIndex=7
log4j.appender.A2.maxFileSize=5mb
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

# For separate xmpp traffic log, disabled by default.
log4j.logger.xmppd.xfer=DEBUG, A3
log4j.appender.A3=org.apache.log4j.varia.NullAppender
# Select next block instead of previous line to enable separate transfer log
# log4j.appender.A3=org.apache.log4j.RollingFileAppender
# log4j.appender.A3.file=${logdir}/xfer.log
# log4j.appender.A3.append=true
# log4j.appender.A3.maxBackupIndex=7
# log4j.appender.A3.maxFileSize=5mb
# log4j.appender.A3.layout=org.apache.log4j.PatternLayout
# # Note, simpler default output than above 3 loggers:
# log4j.appender.A3.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.agent-calendar=ERROR, A4
log4j.appender.A4=org.apache.log4j.RollingFileAppender
log4j.appender.A4.file=${logdir}/agent-calendar.log
log4j.appender.A4.append=true
log4j.appender.A4.maxBackupIndex=7
log4j.appender.A4.maxFileSize=5mb
log4j.appender.A4.layout=org.apache.log4j.PatternLayout
log4j.appender.A4.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.net.outer_planes.jso.BasicStream=OFF, A5
log4j.appender.A5=org.apache.log4j.RollingFileAppender
log4j.appender.A5.file=${logdir}/jso.log
log4j.appender.A5.append=true
log4j.appender.A5.maxBackupIndex=7
log4j.appender.A5.maxFileSize=5mb
log4j.appender.A5.layout=org.apache.log4j.PatternLayout
log4j.appender.A5.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

log4j.logger.genredirect=INFO, A6
log4j.appender.A6=org.apache.log4j.RollingFileAppender
log4j.appender.A6.file=${logdir}/genredirect.log
log4j.appender.A6.append=true
log4j.appender.A6.maxBackupIndex=7
log4j.appender.A6.maxFileSize=5mb
log4j.appender.A6.layout=org.apache.log4j.PatternLayout
log4j.appender.A6.layout.ConversionPattern=[%d{DATE}] %-5p %c [%t] %m%n

Instant Messaging 구성 요소의 log4j 로깅 수준

log4j 로거는 Instant Messaging 구성 요소 로깅 수준iim.conf 매개 변수 기반 로깅 메커니즘에서 설명한 것과 같은 로깅 수준을 사용합니다.

Procedurelog4j 구성 파일(log4j.conf)의 위치를 지정하려면

  1. iim.conf를 엽니다.

    이 파일을 찾으려면 iim.conf 파일 위치를 참조하십시오.

  2. iim.log4j.config 매개 변수를 로거에서 log4j.conf 파일을 찾을 경로로 설정합니다.

    예를 들면 다음과 같습니다. Solaris:


    iim.log4j.config=/etc/opt/SUNWiim/default/config/log4j.conf
    

    Linux:


    iim.log4j.config=/etc/opt/sun/im/default/config/log4j.conf
    
  3. iim.conf를 저장하고 닫습니다.

  4. 서버를 새로 고칩니다.


    imadmin refresh
    

ProcedureInstant Messaging 구성 요소의 Log4j 로깅을 활성화 또는 비활성화하려면

기본적으로 로깅 정보가 생성되는 대상인 구성 요소에는 모두 log4j 로깅이 사용됩니다.

  1. log4j 로깅을 비활성화하려면 log4j.conflog4j.conf.template의 구성 요소 로깅 수준을 모두 OFF로 설정합니다.

    자세한 내용은 Instant Messaging의 log4j 로깅 수준을 설정하려면을 참조하십시오.

  2. log4j 로깅을 활성화하려면 log4j.conflog4j.conf.template의 구성 요소 로깅 수준을 모두 OFF가 아닌 값으로 설정합니다.

ProcedureInstant Messaging의 log4j 로깅 수준을 설정하려면

템플리트 파일이나 로그 구성 파일을 수정하여 로깅 수준을 설정할 수 있습니다. 그러나 구성 파일만 수정하는 경우 다음 번에 configure 유틸리티를 실행할 때 변경 내용을 덮어쓰게 됩니다. 이 문제를 방지하려면 구성 파일과 템플리트 파일을 모두 변경해야 합니다.

  1. log4j.conf.template를 엽니다.

    이 파일은 기본적으로 다음 위치에 저장됩니다.


    im-svr-base/lib
  2. 각 구성 요소에 대해 적용할 로깅 수준을 지정합니다.

    예를 들어 서버의 로깅 수준은 다음과 같이 설정합니다.


    log4j.logger.xmppd=log-level
    

    여기서 log-levelFATAL, ERROR, WARNING, INFO 또는 DEBUG 중 하나입니다.

    각 로깅 수준에 대한 자세한 내용은 표 13–1을 참조하십시오.

  3. log4j.conf.template를 저장하고 닫습니다.

  4. log4j.conf 구성 파일에 대해서도 이 절차를 반복합니다.

ProcedureInstant Messaging 구성 요소의 최대 log4j 로그 파일 크기를 지정하려면

템플리트 파일이나 로그 구성 파일을 수정하여 로깅 수준을 설정할 수 있습니다. 그러나 구성 파일만 수정하는 경우 다음 번에 configure 유틸리티를 실행할 때 변경 내용을 덮어쓰게 됩니다. 이 문제를 방지하려면 구성 파일과 템플리트 파일을 모두 변경해야 합니다.

  1. log4j.conf.template를 엽니다.

    이 파일은 기본적으로 다음 위치에 저장됩니다.


    im-svr-base/lib
  2. 각 구성 요소에 대해 구성 요소 로그 파일의 최대 크기를 지정합니다.

    예를 들어 서버 로그 파일의 크기를 설정하려면 다음을 입력합니다.


    log4j.appender.A1.maxFileSize=max-logfile-size
    

    여기서 A1은 서버의 기본 appender 아이디이며, max-logfile-size는 MB 단위의 크기입니다(예: 5MB).

  3. log4j.conf 구성 파일에 대해서도 이 절차를 반복합니다.