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.rm
或者,您可以为记录器指定任何名称。例如,您可按以下语句所示将记录器命名为 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 中的 API 记录器分配 WARN 级别。
记录器与一个或多个追加器关联,以使其日志消息能够写入到输出介质。可在 log4j.properties 文件中设置不同类型的追加器,这些追加器会将日志消息发送到指定的输出位置。下表提供了 log4j.properties 文件中当前使用的所有追加器的列表,以及简短描述和相关选项。
追加器 | 描述和代码段 |
---|---|
NTEventLogAppender | 追加至 Microsoft Windows NT 事件日志。此追加器只能在 Windows 系统上安装及使用。
|
ConsoleAppender | 使用由用户指定的布局来将日志消息追加至 System.out(缺省值)或 System.err 流。
选项:
|
FileAppender | 将日志消息追加至文件。
选项:
|
RollingFileAppender | 在日志文件达到特定大小时扩展 FileAppender,以备份日志文件。
选项:
|
您可以在 log4j.properties 文件中设置用于指定日志消息格式的不同布局。 您可以指定日志消息包括日期、时间、模块名称、线程名称以及其他信息。这些配置设置在运行时在记录消息期间使用。
下表提供了 IBM Enterprise Records log4j.properties 文件中当前使用的所有布局的列表,以及简要描述和相关选项。
布局 | 描述和代码段 |
---|---|
SimpleLayout | 打印级别,然后日志消息文本后会跟一个破折号 (-)。
|
PatternLayout | 根据特定转换模式格式化日志记录事件。转换模式由字面值文本和转换文本组成。字面值文本将原样输出。转换说明符由 % 字符后接可选格式修饰符和必选转换字符组成。例如,%-5p [%t]: %m%n 是由后接字面值文本“ [”的优先级转换说明符组成的转换模式。此字符串后跟线程转换说明符(后接字面值文本“]: ”)。此字符串后跟消息转换说明符和取决于系统的行分隔符。
选项:
|
HTMLLayout | 将输出格式化为 HTML 表。
选项:
|
将输出格式化为 XML。
选项:
|
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]