Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过JMX为未注册的记录器指定log4j2中的记录器级别_Java_Log4j_Jmx_Log4j2_Mbeans - Fatal编程技术网

Java 通过JMX为未注册的记录器指定log4j2中的记录器级别

Java 通过JMX为未注册的记录器指定log4j2中的记录器级别,java,log4j,jmx,log4j2,mbeans,Java,Log4j,Jmx,Log4j2,Mbeans,我使用JMX客户端以编程方式更改log4j中的记录器级别。它工作正常,但如何为未注册(log4j2.xml中未指定)的记录器指定记录器级别 例如,我有以下记录器块: 我可以通过JMX使用“com.example”和“com.example.java”记录器。但如果我需要为“com.example.java.Runner”或“com.example.groovy”指定记录器级别,该怎么办 目前(2.1版),这是不可能的。JMX仅检测配置中的记录器 如果没有JMX,您可以执行以下操作: 但这也

我使用JMX客户端以编程方式更改log4j中的记录器级别。它工作正常,但如何为未注册(log4j2.xml中未指定)的记录器指定记录器级别

例如,我有以下记录器块:


我可以通过JMX使用“com.example”和“com.example.java”记录器。但如果我需要为“com.example.java.Runner”或“com.example.groovy”指定记录器级别,该怎么办

目前(2.1版),这是不可能的。JMX仅检测配置中的记录器

如果没有JMX,您可以执行以下操作:


但这也仅适用于配置中命名的记录器…

您是否尝试过按照客户机GUI部分中的概述远程编辑Log4j配置

单击“使用下面的XML重新配置”按钮将配置文本发送到远程应用程序,在远程应用程序中它将用于动态重新配置Log4j。这不会覆盖任何配置文件。使用编辑器中的文本重新配置仅在内存中进行,并且文本不会永久存储在任何位置


我尝试使用getConfigText\setConfigText方法在xml配置中添加记录器,这有点难看,但这是可行的