You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Markus Spann (Jira)" <ji...@apache.org> on 2021/07/09 13:59:00 UTC
[jira] [Updated] (LOG4J2-3121) log4j2 config modified at run-time
may trigger incomplete MBean re-initialization due to
InstanceAlreadyExistsException
[ https://issues.apache.org/jira/browse/LOG4J2-3121?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Markus Spann updated LOG4J2-3121:
---------------------------------
Description:
We occasionally encounter an InstanceAlreadyExistsException during log4j2 reconfiguration after update to the configuration file at run-time.
The exception can be suppressed by checking whether the MBean is registered and de-registering it first.
{noformat}
2021-07-09 14:37:37,961 Log4j2-TF-1-ConfiguratonFileWatcher-3 ERROR Could not register mbeans javax.management.InstanceAlreadyExistsException: org.apache.logging.log4j2:type=5c29bfd
at java.management/com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:436)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1855)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:955)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:890)
at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:320)
at java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
at org.apache.logging.log4j.core.jmx.Server.register(Server.java:393)
at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:168)
at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:141)
at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:638)
at org.apache.logging.log4j.core.LoggerContext.onChange(LoggerContext.java:763)
at org.apache.logging.log4j.core.util.AbstractWatcher$ReconfigurationRunnable.run(AbstractWatcher.java:93)
at java.base/java.lang.Thread.run(Thread.java:834){noformat}
> log4j2 config modified at run-time may trigger incomplete MBean re-initialization due to InstanceAlreadyExistsException
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: LOG4J2-3121
> URL: https://issues.apache.org/jira/browse/LOG4J2-3121
> Project: Log4j 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.14.1
> Reporter: Markus Spann
> Priority: Major
>
> We occasionally encounter an InstanceAlreadyExistsException during log4j2 reconfiguration after update to the configuration file at run-time.
> The exception can be suppressed by checking whether the MBean is registered and de-registering it first.
> {noformat}
> 2021-07-09 14:37:37,961 Log4j2-TF-1-ConfiguratonFileWatcher-3 ERROR Could not register mbeans javax.management.InstanceAlreadyExistsException: org.apache.logging.log4j2:type=5c29bfd
> at java.management/com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:436)
> at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerWithRepository(DefaultMBeanServerInterceptor.java:1855)
> at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:955)
> at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:890)
> at java.management/com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:320)
> at java.management/com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:522)
> at org.apache.logging.log4j.core.jmx.Server.register(Server.java:393)
> at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:168)
> at org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:141)
> at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:638)
> at org.apache.logging.log4j.core.LoggerContext.onChange(LoggerContext.java:763)
> at org.apache.logging.log4j.core.util.AbstractWatcher$ReconfigurationRunnable.run(AbstractWatcher.java:93)
> at java.base/java.lang.Thread.run(Thread.java:834){noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)