Undertow java.util.logging:如何在运行时使用java.util-logging更改Undert



我有一个logging.properties,其中的处理程序是java.util.logging.FileHandler、java.util.loging.ConsoleHandler.

根记录器的默认日志记录级别设置为INFO。

日志文件在启动时传递给JVM_OPTS。

我怎样才能越过级别说";FINEST";或";DEBUG";在运行时不使用java.util.logging重新启动服务器?

您想要使用ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class(来访问操作。实现这一点的简单方法是使用支持MBean访问的工具。

将JConsole连接到Undertow(本地或远程(并使用MBean选项卡更改记录器级别是理想的方式。一个问题是,除非代码触发了记录器的创建,否则记录器名称不存在。您不能在代码运行之前使用MBean来创建记录器。如果您在本地使用JConsole,请确保它与Undertow在同一帐户下运行。

  1. 使用Undertow运行的相同O/S帐户启动JConsole
  2. 将Jconsole连接到Undertow
  3. 选择MBeans选项卡
  4. 展开java.util.logging->Logging->Operations的树节点
  5. 选择setLoggerLevel
  6. p0中输入确切的记录器名称。如果是根记录器,则输入为空
  7. p1中输入级别名称。在这种情况下,它将是FINEST
  8. 单击setLoggerLevel。如果操作有效,您将看到Method successfully invoked

使用JMXTerm可以执行类似的步骤。

最新更新