表 14–8 中介绍了与日志相关的属性。
设置日志级别。
为一个或多个日志记录类别设置输出通道(文件和/或控制台)。
如果要将输出记录到文件中,请为该文件配置转移条件。
可以通过设置记录程序属性来完成上述步骤。可以使用以下两种方法之一来设置记录程序属性:
通过命令行传递的选项将覆盖代理实例配置文件中指定的属性。以下 imqbrokerd 选项影响日志记录:
代理度量的日志记录时间间隔(以秒为单位)
日志记录级别(ERROR、WARNING、INFO 或 NONE)
无提示模式(不向控制台记录消息)
将所有消息记录到控制台
下面几节介绍了如何更改默认配置以执行下列操作:
更改输出通道(日志消息的目的地)
更改转移条件
默认情况下,错误和警告消息除了记录到日志文件中以外,还会显示在终端上。(在 Solaris 中,错误消息还会写入到系统的 syslog 守护进程中。)
可以用以下方式更改日志消息的输出通道:
要在屏幕上显示所有日志类别(对于给定的级别)输出,请在 imqbrokerd 命令中使用 -tty 选项。
要禁止在屏幕上显示日志输出,请在 imqbrokerd 命令中使用 -silent 选项。
使用 imq.log.file.output 属性指定将哪些类别的日志记录信息写入到日志文件中。例如,
imq.log.file.output=ERROR
使用 imq.log.console.output 属性指定将哪些类别的日志记录信息写入到控制台。例如,
imq.log.console.output=INFO
在 Solaris 中,使用 imq.log.syslog.output 属性指定将哪些类别的日志记录信息写入到 Solaris syslog 中。例如,
imq.log.syslog.output=NONE
在更改记录程序输出通道前,必须确保日志记录级别已设置为支持映射到输出通道的信息。例如,如果将日志级别设置为 ERROR,然后将 imq.log.console.output 属性设置为 WARNING,那么将不会记录任何消息,因为没有启用 WARNING 消息的日志记录。
转移日志文件有两个条件:时间和大小。默认情况下使用时间条件,每七天转移一次文件。
要更改时间间隔,需要更改 imq.log.file.rolloversecs 属性。例如,以下属性定义将时间间隔更改为十天:
imq.log.file.rolloversecs=864000
要将转移条件更改为取决于文件大小,需要设置 imq.log.file.rolloverbytes 属性。例如,以下定义将在文件达到 500,000 字节的限制时将代理定向到转移文件。
imq.log.file.rolloverbytes=500000
如果同时设置与时间和大小相关的转移属性,则转移将由最先达到的限制触发。前面已指出,代理最多维护九个转移文件。
可以在代理运行时设置或更改日志文件转移属性。要设置这些属性,请使用 imqcmd update bkr 命令。
本节讲述使用代理日志文件报告度量信息的过程。有关配置记录程序的一般信息,请参见配置和使用代理日志记录。
配置代理的度量生成功能:
确认记录程序是否收集度量信息:
imq.log.level=INFO |
这是默认值。该值可以在 config.properties 文件中设置,也可以在启动代理时使用 -loglevel level 命令行选项进行设置。
确认记录程序是否已设置为将度量信息写入日志文件:
imq.log.file.output=INFO |
这是默认值。它可以在 config.properties 文件中设置。
启动代理。
[21/Jul/2004:11:21:18 PDT] Connections: 0 JVM Heap: 8323072 bytes (7226576 free) Threads: 0 (14-1010) In: 0 msgs (0bytes) 0 pkts (0 bytes) Out: 0 msgs (0bytes) 0 pkts (0 bytes) Rate In: 0 msgs/sec (0 bytes/sec) 0 pkts/sec (0 bytes/sec) Rate Out: 0 msgs/sec (0 bytes/sec) 0 pkts/sec (0 bytes/sec) |
有关度量数据的参考信息,请参见第 18 章,度量参考。
可以通过对代理启用停用消息日志记录来监视物理目的地。无论是否使用停用消息队列,都可以记录停用消息。
如果启用了停用消息日志记录,代理会记录以下类型的事件:
如果使用了停用消息队列,日志记录还会包括以下类型的事件:
代理将消息移动到停用消息队列中。
代理从停用消息队列中删除某条消息并将它丢弃。
[29/Mar/2006:15:35:39 PST] [B1147]: Message 8-129.145.180.87(e7:6b:dd:5d:98:aa)- 35251-1143675279400 from destination Q:q0 has been placed on the DMQ because [B0053]: Message on destination Q:q0 Expired: expiration time 1143675279402, arrival time 1143675279401, JMSTimestamp 1143675279400 |
默认情况下将禁用停用消息日志记录。要启用它,请设置代理属性 imq.destination.logDeadMsgs。