Message Queue 提供程序定义了一组与日志记录级别和日志记录活动相关联的日志记录名称空间,以使 Message Queue 客户端能够在正确设置日志记录配置后记录连接和会话事件。
Message Queue 客户端运行时环境的根日志记录名称空间被定义为 javax.jms。Message Queue 客户端运行时环境中的所有记录程序均将此名称用作父名称空间。
用于 Message Queue 客户端运行时环境的日志记录级别与 java.util.logging.Level 类中定义的级别相同。此类定义了七个标准日志级别,另外还有两个用于打开和关闭日志记录的设置。
关闭日志记录。
最高优先级,最大值。由应用程序定义。
由应用程序定义。
由应用程序定义。
由应用程序定义。
由应用程序定义。
由应用程序定义。
最低优先级,最小值。由应用程序定义。
启用所有消息的日志记录。
通常,Message Queue 客户端运行时环境中发生的异常和错误由具有 javax.jms 名称空间的记录程序进行记录。
从 JVM 抛出并由客户端运行时环境捕获的异常(例如 IOException)由具有 javax.jms 日志记录名称空间的记录程序记录为 WARNING 级别。
从客户端运行时环境抛出的 JMS 异常(例如 IllegalStateException)由具有 javax.jms 日志记录名称空间的记录程序记录为 FINER 级别。
从 JVM 抛出并由客户端运行时环境捕获的错误(例如 OutOfMemoryError)由具有 javax.jms 日志记录名称空间的记录程序记录为 SEVERE 级别。
下表列出了可记录的事件和日志级别,要记录 JMS 连接事件和会话事件,必须设置此级别。
下表描述了连接的日志级别和事件。
表 1–6 javax.jms.connection 名称空间的日志级别和事件
日志级别 |
事件 |
---|---|
FINE |
连接已创建 |
FINE |
连接已启动 |
FINE |
连接已关闭 |
FINE |
连接已断开 |
FINE |
已重新连接 |
FINER |
其他连接活动,例如 setClientID |
FINEST |
消息、确认、Message Queue 操作和控制消息(例如提交事务) |
对于会话,将在日志记录中记录以下信息。
传送给使用方的消息的每个日志记录包括 ConnectionID、SessionID 和 ConsumerID。
由生成方发送的消息的每个日志记录包括 ConnectionID、SessionID、ProducerID 和目的地名称。
下表描述了会话的日志级别和事件。
表 1–7 javax.jms.session 名称空间的日志级别和事件
日志级别 |
事件 |
---|---|
FINE |
会话已创建 |
FINE |
会话已关闭 |
FINE |
生成方已创建 |
FINE |
使用方已创建 |
FINE |
目的地已创建 |
FINER |
其他会话活动,例如提交会话。 |
FINEST |
已生成并使用消息。(未在日志记录中记录消息属性和主体。) |
默认情况下,输出日志级别是从运行应用程序所在的 JRE 继承而来的。可查看 JRE_DIRECTORY/lib/logging.properties 文件以确定该级别。
可通过编程方式或使用配置文件来配置日志记录,还可以控制进行日志记录的范围。以下部分介绍了这些可行的操作。