如何禁止 java.util.logging 中的特定记录器?

How do I suppress specific loggers in java.util.logging?

我正在尝试获取 JavaFX WebView 发生的深层问题的可处理日志。

这个配置(毫不奇怪)给了我大量与我的问题无关的事件:

handlers= java.util.logging.ConsoleHandler
.level= FINEST
java.util.logging.ConsoleHandler.level = FINEST
java.util.logging.ConsoleHandler.formatter = java.util.logging.XMLFormatter

我特别遇到很多这样的事件,掩盖了我试图找到的真正问题:

<record>
  <date>2019-02-23T15:05:45</date>
  <millis>1550946945429</millis>
  <sequence>12936</sequence>
  <logger>com.sun.javafx.webkit.prism.WCPathImpl</logger>
  <level>FINE</level>
  <class>com.sun.javafx.webkit.prism.WCPathImpl</class>
  <method>addLineTo</method>
  <thread>18</thread>
  <message>WCPathImpl(1,361).addLineTo(600,516)</message>
</record>

我试图通过将此添加到 logging.properties:

来抑制日志记录 com.sun.javafx.webkit.prism.WCPathImpl
com.sun.javafx.webkit.prism.WCPathImpl = OFF

那没用。那个记录器仍然记录大量的消息,我不需要解决这个问题。

我正在尝试调试 okta-aws-cli

如何在 java.util.logging 中抑制特定的记录器?

记录器名称不够。您需要指定要在记录器上更改的 属性,在本例中为 level.

而不是这个损坏的配置:

com.sun.javafx.webkit.prism.WCPathImpl = OFF

使用此配置专门引用记录器的级别 属性:

com.sun.javafx.webkit.prism.WCPathImpl.level = OFF