记录isLoggable在WebSphere中不起作用

时间:2010-09-19 21:54:29

标签: logging websphere

我正在使用java.util.logging.Logger在websphere中进行日志记录,并且一直在尝试让Logger.isLoggable工作,但它没有按预期工作。例如,如果我将某个包的日志记录级别设置为ALL,并检查Level.Finest是否可记录,则返回false并且不会将任何内容记录到日志记录文件中。

在下表中,我在第一行定义了websphere中的包级别日志记录级别。在以下几行中,我定义了可能的isLoggable选项,以及当包日志记录设置为上面指定的值时是否返回true。我的期望是不正确的还是未在websphere中以预期的方式设置日志记录级别?

Package level Log Setting    ALL      FINEST   FINER     FINE    WARN      SEVERE

isLoggable(all)              Yes      No       No        No       No        No

isLoggable(finest)           Yes      Yes      No        No       No        No

isLoggable(finer)            Yes      Yes      Yes       No       No        No

isLoggable(fine)             Yes      Yes      Yes       Yes      No        No

isLoggable(warn)             Yes      Yes      Yes       Yes      Yes       No

isLoggable(severe)           Yes      Yes      Yes       Yes      Yes       Yes

非常感谢。

杰里米

1 个答案:

答案 0 :(得分:1)

我遇到了这个问题并且非常惊讶为什么不应该这样,因为WebSphere Application Server使用标准的Java Util Logging。

为了测试它,我编写了一个快速应用程序,它创建了几个不同的记录器并使用isLoggable()方法检查它们。您可以在下面看到结果。我删除了级别ALL和OFF以获得一个紧凑的列表,但它们也按预期工作。

Server Info: IBM WebSphere Application Server/7.0

Package level/Log Setting  FINEST  FINER  FINE  CONFIG  INFO  WARNING  SEVERE
isLoggable(finest)         Yes     No     No    No      No    No       No
isLoggable(finer)          Yes     Yes    No    No      No    No       No
isLoggable(fine)           Yes     Yes    Yes   No      No    No       No
isLoggable(config)         Yes     Yes    Yes   Yes     No    No       No
isLoggable(info)           Yes     Yes    Yes   Yes     Yes   No       No
isLoggable(warning)        Yes     Yes    Yes   Yes     Yes   Yes      No
isLoggable(severe)         Yes     Yes    Yes   Yes     Yes   Yes      Yes

从我的观点来看,我会说它按预期工作。也许有一个错误,它在此期间得到了解决。