當您安裝 Instant Messaging 時,Log4j 配置檔案的範本檔案 (log4j.conf.template ) 會安裝到 im-svr-base/lib 目錄中。當您在安裝後執行 configure 公用程式時,會使用範本在 im-cfg-base 目錄中建立 log4j 配置檔案 (log4j.conf)。此配置檔案用於決定儲存由 log4j 產生的記錄檔案的位置、各種元件使用的記錄層級、輸出語法,並決定要產生哪種記錄檔案。
本節在以下小節描述使用 log4j 記錄程式產生 Instant Messaging 記錄檔案:
log4j 記錄程式使用 Instant Messaging 元件記錄層級中所述的記錄層級。
如需 log4j 相關的詳細資訊,和記錄檔案配置層面的說明,例如大小、備份數目等,請參閱 Apache Logging Services 網站。
您可以變更 log4j 配置檔案 log4j.conf 的位置,方法是修改 iim.conf 中的 iim.log4j.config 參數。如果您未指定此參數的值,記錄程式會查閱 im-cfg-base。如果記錄程式在該目錄中找不到 log4j 配置檔案,它會使用 iim.conf 記錄參數產生非 log4j 樣式的記錄。
如需如何找到 im-cfg-base 的資訊,請參閱Instant Messaging 伺服器目錄結構。
configure 公用程式會根據 log4j 配置檔案範本 (log4j.conf.template) 的內容產生 log4j 配置檔案 (log4j.conf )。範例 13–1 顯示 log4j 範本。在此範本中:
${logdir} 對應至您在配置期間所指定要儲存記錄檔案的目錄。請參閱Instant Messaging 記錄檔案位置。
每個元件的記錄配置區段均以以下文字開頭:
log4j.logger. |
其中:
產生包含伺服器記錄資訊的 xmppd.log。
產生包含監視程式資訊的 wd.log
產生只包含 XMPP 流量的 xfer.log。
產生行事曆代理程式的記錄資訊。
產生包含 Jabber 串流物件資訊的 jso.log。如需詳細資訊,請參閱 Jabber 串流物件網站。
產生包含重新導向資料庫建立工具資訊的 genredirect.log。
A#,例如 A1,是附加器 ID。
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 |
log4j 記錄程式使用的記錄層級,與 Instant Messaging 元件記錄層級中所述 iim.conf 參數式記錄機制的記錄層級相同。
開啟 iim.conf。
如需找到此檔案的詳細資訊,請參閱iim.conf 檔案位置。
將 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 |
儲存並關閉 iim.conf。
重新整理伺服器。
imadmin refresh |
根據預設,log4j 記錄用於所有為其產生記錄資訊的元件。
若要停用 log4j 記錄,可將 log4j.conf 和 log4j.conf.template 中的元件記錄層級設定為 OFF。
如需詳細資訊,請參閱設定 Instant Messaging 的 Log4j 記錄層級。
若要啟用 log4j 記錄,可將 log4j.conf 和 log4j.conf.template 中的元件記錄層級設定為任何非 OFF 的記錄層級。
您可以透過修改範本或記錄配置檔案來設定記錄層級。但是,如果您只修改配置檔案,下次您執行 configure 時會覆寫您所做的任何變更。為避免這種狀況的發生,您應同時變更配置檔案和範本。
開啟 log4j.conf.template。
依預設,此檔案會儲存於下列位置:
im-svr-base/lib |
對於每個元件,指定您要使用的記錄層級。
例如,設定伺服器的記錄層級:
log4j.logger.xmppd=log-level |
其中,log-level 是 FATAL、 ERROR、WARNING、INFO 或 DEBUG 中的一個。
如需每個記錄層級的詳細資訊,請參閱表 13–1。
儲存並關閉 log4j.conf.template。
重複 log4j.conf 配置檔案的程序。
您可以透過修改範本或記錄配置檔案來設定記錄層級。但是,如果您只修改配置檔案,下次您執行 configure 時會覆寫您所做的任何變更。為避免這種狀況的發生,您應同時變更配置檔案和範本。