IBM® Enterprise Records 应用程序包括一个 log4j.properties 样本文件,您可配置该文件。
log4j.properties 文件位于 ier_install_path\ RecordsManagerSweep 文件夹中,并且您可通过在该文件中为以下各项指定值来配置日志记录行为:
log4j.properties 文件中的每个记录器均分配了一个级别。如果您未向记录器分配级别,那么 log4j 将自动向未分配的记录器分配父记录器的级别。缺省情况下,向记录器分配 WARN 级别。
您可以将 log4j.properties 文件配置为具有不同的记录器、追加器和布局设置。在运行时,log4j.properties 必须通过类路径对应用程序可用。您可以通过为语句添加 # 号前缀,注释掉样本文件中的条目;在运行时将不执行带有 # 号标记的条目。
要打开 log4j.properties 文件,请浏览至 ier_install_path\RecordsManagerSweep 文件夹,然后使用文本编辑器来打开该文件。
您需要先设置记录器。您可以有多个记录器,以将您对应用程序要求的日志记录类型分类。要对 com.filenet.rm 的所有类及其子数据包启用日志记录,请指定记录器,如以下语句中所示:
log4j.logger.com.filenet.rmor
您可以为记录器指定任何名称。例如,您可按以下语句所示将记录器命名为 APILOG:
log4j.logger.com.filenet.rm=warn, APILOG
您需要设置记录级别,以建立在运行时 log4j 记录的消息的详细级别。log4j 支持五个常用日志记录的级别,如下表所示。
级别 | 描述 |
---|---|
DEBUG | 指定对调试应用程序最有用的细颗粒度参考事件。 |
INFO | 指定突出显示应用程序进度的粗颗粒度级别的参考消息。 |
WARN | 指定有潜在危害的情况。 |
ERROR | 指定可能仍允许应用程序继续运行的错误事件。 |
FATAL | 指定将会导致应用程序终止的极严重错误事件。 |
有关特殊和定制记录级别的信息,请参阅 Apache Web 站点上的 log4j 文档。缺省情况下,应用程序以 WARN 级别启动。可在运行时将此级别修改为 DEBUG、INFO、ERROR、WARN 或 FATAL 级别。您还可以包括多条记录器语句,所有这些语句均用于同一记录器,但具有不同级别(例如,一条为 DEBUG 级别,其他为 WARN 级别)。您可以通过为语句添加 # 号前缀,在样本文件中注释掉 DEBUG 和 WARN 中的一个级别,并根据需要在两者间切换。在运行时将不执行带有 # 号标记的条目。没有级别的记录器将自动继承其父记录器的级别。缺省情况下,向 IBM Enterprise Records 中的 RM API 记录器分配 WARN 级别。
记录器与一个或多个追加器关联,以使其日志消息能够写入到输出介质。可在 log4j.properties 文件中设置不同类型的追加器,这些追加器会将日志消息发送到指定的输出位置。下表提供了 log4j.properties 文件中当前使用的所有追加器的列表,以及简短描述和相关选项。
追加器 | 描述和代码段 |
---|---|
NTEventLogAppender | 追加至 Microsoft Windows NT 事件日志。此追加器只能在 Windows 系统上安装及使用。 log4j.appender.APILOG=org.apache.log4j.nt.NTEventLogAppender |
ConsoleAppender | 使用由用户指定的布局来将日志消息追加至 System.out(缺省值)或 System.err 流。 log4j.appender.APILOG=org.apache.log4j.ConsoleAppender 选项:
|
FileAppender | 将日志消息追加至文件。 log4j.appender.APILOG=org.apache.log4j.FileAppender 选项:
|
RollingFileAppender | 在日志文件达到特定大小时扩展 FileAppender,以备份日志文件。 log4j.appender.APILOG=org.apache.log4j.RollingFileAppender 选项:
|
您可在 log4j.properties 文件中设置指定日志消息格式的不同布局。 您可将日志消息指定为包括日期、时间、模块名称、以及线程名称等。这些配置设置在运行时在记录消息期间使用。
下表提供了 IBM Enterprise Records log4j.properties 文件中当前使用的所有布局的列表,以及简要描述和相关选项。
布局 | 描述和代码段 |
---|---|
SimpleLayout | 打印级别,然后日志消息文本后会跟一个破折号 (-)。 org.apache.log4j.SimpleLayout |
PatternLayout | 根据特定转换模式格式化日志记录事件。转换模式由字面值文本和转换文本组成。字面值文本将原样输出。转换说明符由 % 字符后接可选格式修饰符和必选转换字符组成。例如,%-5p [%t]: %m%n 是由以下各项组成的转换模式:优先级(也称为级别)转换说明符,后接字面值文本“ [”,后接线程转换说明符,后接字面值文本“]: ”,后接消息转换说明符和系统相关行分隔符。 org.apache.log4j.PatternLayout 选项:
|
HTMLLayout | 将输出格式化为 HTML 表。 org.apache.log4j.HTMLLayout 选项:
|
将输出格式化为 XML。 org.apache.log4j.xml.XMLLayout 选项:
|
IBM Enterprise Records 随附的 log4j.properties 文件将 PatternLayout 用于日志消息格式。下表提供了可在配置文件中声明的转换模式的列表,及其简要描述:
模式 | 描述 |
---|---|
%t | 生成日志请求的线程的名称 |
%c | 与日志请求关联的记录器的名称 |
%-60c | 将记录器名称向左对齐最少 60 个空格 |
%r | 从应用程序启动开始已过去的毫秒数 |
%p | 日志语句的级别 |
%m | 消息 |
%Time | 发生日志记录的时间 |
%d | 日志记录事件的日期 |
%n | 新行 |
以下代码语句显示了如何启用 PatternLayout 并指定一个简单的转换模式:
log4j.appender.APILOG.layout=org.apache.log4j.PatternLayout log4j.appender.APILOG.layout.ConversionPattern=%-5p %d {dd MMM yyyy HH:mm:ss,SSS}, -%m, %r, [%M] % n
例如:
WARN, 20 Jun 2005 14:48:20,900, -[enter] getObjectStoreXML(ObjectStores), 102042, [setLoggerMessage] WARN, 20 Jun 2005 14:48:21,100, -[exit] getObjectStoreXML(ObjectStores), 102342, [setLoggerMessage]