[
https://issues.apache.org/jira/browse/LOG4J2-716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Remko Popma updated LOG4J2-716:
-------------------------------
Fix Version/s: (was: 2.1)
2.0.1
> Auto-disable JMX when detecting Android
> ---------------------------------------
>
> Key: LOG4J2-716
> URL: https://issues.apache.org/jira/browse/LOG4J2-716
> Project: Log4j 2
> Issue Type: Improvement
> Components: JMX
> Reporter: Remko Popma
> Assignee: Remko Popma
> Fix For: 2.0.1
>
>
> During the investigation of LOG4J2-703 we discovered that on Android's Dalvik
> VM, Log4J2's JMX components cannot be initialized.
> This can be worked around by setting system property
> {{log4j2.disable.jmx=true}}.
> This ticket is to automatically set that system property when detecting that
> Log4j is running on Android.
> TODO investigate if JMX is not supported at all on that environment or
> whether it can be made to work if invoked correctly. UPDATE:
> {{java.lang.management}} is not supported as of Android API level 20. See
> http://developer.android.com/reference/packages.html
> Stack trace:
> {noformat}
> 07-15 15:12:52.539 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.539 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.543 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve interface method 926:
> Ljavax/management/MBeanServer;.registerMBean
> (Ljava/lang/Object;Ljavax/management/ObjectName;)Ljavax/management/ObjectInstance;
> 07-15 15:12:52.543 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.543 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.547 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.547 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.547 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.547 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.547 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.551 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.551 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.551 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.551 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.555 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.555 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.555 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.555 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.555 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.559 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.559 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.559 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.559 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.559 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/ObjectName;)
> 07-15 15:12:52.563 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.563 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Unable
> to resolve superclass of
> Lorg/apache/logging/log4j/core/jmx/StatusLoggerAdmin; (391)
> 07-15 15:12:52.563 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Link of
> class 'Lorg/apache/logging/log4j/core/jmx/StatusLoggerAdmin;' failed
> 07-15 15:12:52.563 1603-1603/com.torointl.log4j2xtest E/dalvikvm﹕ Could
> not find class 'org.apache.logging.log4j.core.jmx.StatusLoggerAdmin',
> referenced from method
> org.apache.logging.log4j.core.jmx.Server.registerStatusLogger
> 07-15 15:12:52.567 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve new-instance 764
> (Lorg/apache/logging/log4j/core/jmx/StatusLoggerAdmin;) in
> Lorg/apache/logging/log4j/core/jmx/Server;
> 07-15 15:12:52.567 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve static method 456:
> Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer
> ()Ljavax/management/MBeanServer;
> 07-15 15:12:52.571 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.571 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.571 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Unable
> to resolve superclass of
> Lorg/apache/logging/log4j/core/jmx/LoggerContextAdmin; (391)
> 07-15 15:12:52.571 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Link of
> class 'Lorg/apache/logging/log4j/core/jmx/LoggerContextAdmin;' failed
> 07-15 15:12:52.575 1603-1603/com.torointl.log4j2xtest E/dalvikvm﹕ Could
> not find class 'org.apache.logging.log4j.core.jmx.LoggerContextAdmin',
> referenced from method
> org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure
> 07-15 15:12:52.575 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve new-instance 759
> (Lorg/apache/logging/log4j/core/jmx/LoggerContextAdmin;) in
> Lorg/apache/logging/log4j/core/jmx/Server;
> 07-15 15:12:52.575 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.575 1603-1603/com.torointl.log4j2xtest E/dalvikvm﹕ Could
> not find class 'javax.management.ObjectName', referenced from method
> org.apache.logging.log4j.core.jmx.Server.unregisterAllMatching
> 07-15 15:12:52.579 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve new-instance 393 (Ljavax/management/ObjectName;) in
> Lorg/apache/logging/log4j/core/jmx/Server;
> 07-15 15:12:52.579 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.579 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.579 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.583 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.583 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.583 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.583 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.587 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.587 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.587 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.587 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.587 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.591 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.591 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.591 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve static method 456:
> Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer
> ()Ljavax/management/MBeanServer;
> 07-15 15:12:52.595 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.599 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.603 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.607 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.611 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.615 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.615 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.619 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.623 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.627 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to resolve static method 456:
> Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer
> ()Ljavax/management/MBeanServer;
> 07-15 15:12:52.631 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.635 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.639 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.643 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.647 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.651 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.651 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.655 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.659 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.663 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.671 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ VFY:
> unable to find class referenced in signature (Ljavax/management/MBeanServer;)
> 07-15 15:12:52.675 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Unable
> to resolve superclass of
> Lorg/apache/logging/log4j/core/jmx/StatusLoggerAdmin; (391)
> 07-15 15:12:52.675 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Link of
> class 'Lorg/apache/logging/log4j/core/jmx/StatusLoggerAdmin;' failed
> 07-15 15:12:52.683 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Unable
> to resolve superclass of
> Lorg/apache/logging/log4j/core/jmx/LoggerContextAdmin; (391)
> 07-15 15:12:52.683 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕ Link of
> class 'Lorg/apache/logging/log4j/core/jmx/LoggerContextAdmin;' failed
> 07-15 15:12:52.695 1603-1603/com.torointl.log4j2xtest W/dalvikvm﹕
> threadid=1: thread exiting with uncaught exception (group=0xa4d72b20)
> 07-15 15:12:52.715 1603-1603/com.torointl.log4j2xtest E/AndroidRuntime﹕
> FATAL EXCEPTION: main
> Process: com.torointl.log4j2xtest, PID: 1603
> java.lang.NoClassDefFoundError: java.lang.management.ManagementFactory
> at
> org.apache.logging.log4j.core.jmx.Server.reregisterMBeansAfterReconfigure(Server.java:118)
> at
> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:369)
> at
> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:416)
> at
> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:146)
> at
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:75)
> at
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:37)
> at
> org.apache.logging.log4j.LogManager.getLogger(LogManager.java:473)
> at
> com.torointl.log4j2xtest.MyActivity.onCreate(MyActivity.java:28)
> at android.app.Activity.performCreate(Activity.java:5231)
> at
> android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
> at
> android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
> at
> android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
> at android.app.ActivityThread.access$800(ActivityThread.java:135)
> at
> android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
> at android.os.Handler.dispatchMessage(Handler.java:102)
> at android.os.Looper.loop(Looper.java:136)
> at android.app.ActivityThread.main(ActivityThread.java:5017)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:515)
> at
> com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
> at dalvik.system.NativeStart.main(Native Method)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]