[
https://issues.apache.org/jira/browse/LOG4J2-443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13899175#comment-13899175
]
Colin Froggatt commented on LOG4J2-443:
---------------------------------------
Another exception I have seen a couple of times while going around this loop is
the following:
{code}
Exception occurred during event dispatching:
java.lang.ArrayIndexOutOfBoundsException: 1
at
javax.swing.plaf.basic.BasicTabbedPaneUI.paintTabArea(BasicTabbedPaneUI.java:817)
at
javax.swing.plaf.basic.BasicTabbedPaneUI.paint(BasicTabbedPaneUI.java:780)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:143)
at javax.swing.JComponent.paintComponent(JComponent.java:760)
at javax.swing.JComponent.paint(JComponent.java:1037)
at javax.swing.JComponent.paintChildren(JComponent.java:870)
at javax.swing.JComponent.paint(JComponent.java:1046)
at javax.swing.JComponent.paintChildren(JComponent.java:870)
at javax.swing.JComponent.paint(JComponent.java:1046)
at javax.swing.JComponent.paintChildren(JComponent.java:870)
at javax.swing.JComponent.paint(JComponent.java:1046)
at javax.swing.JComponent.paintChildren(JComponent.java:870)
at javax.swing.JComponent.paint(JComponent.java:1046)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5132)
at
javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1523)
at
javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1454)
at javax.swing.RepaintManager.paint(RepaintManager.java:1257)
at javax.swing.JComponent._paintImmediately(JComponent.java:5080)
at javax.swing.JComponent.paintImmediately(JComponent.java:4890)
at javax.swing.RepaintManager$3.run(RepaintManager.java:814)
at javax.swing.RepaintManager$3.run(RepaintManager.java:802)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:802)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:745)
at
javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:725)
at javax.swing.RepaintManager.access$1000(RepaintManager.java:46)
at
javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1668)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:672)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:633)
at java.awt.EventQueue$2.run(EventQueue.java:631)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:642)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1052)
at java.awt.Dialog$3.run(Dialog.java:1104)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1102)
at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:853)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:650)
at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:621)
at
org.apache.logging.log4j.jmx.gui.ClientEditConfigPanel.showConfirmation(ClientEditConfigPanel.java:110)
at
org.apache.logging.log4j.jmx.gui.ClientEditConfigPanel.access$300(ClientEditConfigPanel.java:43)
at
org.apache.logging.log4j.jmx.gui.ClientEditConfigPanel$2.actionPerformed(ClientEditConfigPanel.java:85)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6297)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3275)
at java.awt.Component.processEvent(Component.java:6062)
at java.awt.Container.processEvent(Container.java:2039)
at java.awt.Component.dispatchEventImpl(Component.java:4660)
at java.awt.Container.dispatchEventImpl(Container.java:2097)
at java.awt.Component.dispatchEvent(Component.java:4488)
at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4575)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4236)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4166)
at java.awt.Container.dispatchEventImpl(Container.java:2083)
at java.awt.Window.dispatchEventImpl(Window.java:2489)
at java.awt.Component.dispatchEvent(Component.java:4488)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:674)
at java.awt.EventQueue.access$400(EventQueue.java:81)
at java.awt.EventQueue$2.run(EventQueue.java:633)
at java.awt.EventQueue$2.run(EventQueue.java:631)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$3.run(EventQueue.java:647)
at java.awt.EventQueue$3.run(EventQueue.java:645)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:644)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Exception occurred during event dispatching:
java.lang.ArrayIndexOutOfBoundsException
{code}
This is always after pressing "reconfigure with XML below". It opens in a
dialog titled "JConsole:Output". After it pops up it is possible to ignore it
and carry on with all the above steps.
> log4j2 LoggerContext not showing up in JMX Gui or JConsole
> ----------------------------------------------------------
>
> Key: LOG4J2-443
> URL: https://issues.apache.org/jira/browse/LOG4J2-443
> Project: Log4j 2
> Issue Type: Bug
> Components: JMX
> Affects Versions: 2.0-beta9
> Environment: Java 1.6.0_45-b06 on win7 (same behaviour on Java 7)
> Reporter: Colin Froggatt
> Assignee: Remko Popma
> Fix For: 2.0-rc1, 2.0
>
>
> This issue raised after request to do so by Remko in [StackOverflow question
> |http://stackoverflow.com/questions/19816528/log4j2-loggercontext-not-showing-up-in-jmx-gui-or-jconsole].
>
> I am trying to configure log4j2 so that I can access the loggers via JMX and
> change their log levels.
> However, when I hook everything up, none of the loggers show up in the JMX
> tree (or log4j-jmx-gui) as shown in the [log4j2 JMX
> docs](http://logging.apache.org/log4j/2.x/manual/jmx.html#ClientGUI). Only
> the log4j2 ContextSelector and StatusLogger in the JConsole attribute tree
> and the StatusLogger tab in the log4j-jmx-gui (stand-alone or as a plugin)
> show up. No LoggerContext elements.
> I've googled and not come up with anything! That probably means I'm missing
> something somewhere. Any help would be greatly appreciated by me and wall
> which I'm banging my head against :)
> I'm using Log4j2 beta9 with Java 1.6.0_45-b06 on win7. I have tried it on
> Java 7 and it results in the same behaviour.
> The log4j2 dependencies being used:
> {code}
> log4j-api-2.0-beta9.jar
> log4j-core-2.0-beta9.jar
> {code}
> My log4j2.xml:
> {code}
> <?xml version="1.0" encoding="UTF-8" ?>
> <Configuration status="debug">
> <Appenders>
> <Console name="log-test" target="SYSTEM_OUT">
> <PatternLayout pattern="%d{DATE} %-5p LJX2 %c{1}: %m%n" />
> </Console>
> </Appenders>
> <Loggers>
> <Logger name="top.Log4J2TestApp" level="debug"
> additivity="false">
> <AppenderRef ref="log-test" />
> </Logger>
> <Root level="trace">
> <AppenderRef ref="log-test" />
> </Root>
> </Loggers>
> </Configuration>
> {code}
> My test program:
> {code}
> package top;
> import org.apache.logging.log4j.LogManager;
> import org.apache.logging.log4j.Logger;
>
> public class Log4J2TestApp {
> public static void main(String[] args) {
> System.out.println("******** Started ZZZ ****************");
> Logger log = LogManager.getLogger(Log4J2TestApp.class);
> int cnt = 0;
> while (true) {
> log.warn("=========== Test message: {} ================",
> cnt++);
> Thread.sleep(1000);
> }
> }
> }
> {code}
> The output of the test program looks like this:
> {code}
> ******** Started ZZZ ****************
> 2013-11-06 15:07:29,720 DEBUG Generated plugins in 0.000020959 seconds
> 2013-11-06 15:07:29,733 DEBUG Calling createLayout on class
> org.apache.logging.log4j.core.layout.PatternLayout for element PatternLayout
> with params(pattern="%d{DATE} %-5p LJX2 %c{1}: %m%n",
> Configuration(log4j2.xml), null, charset="null",alwaysWriteExceptions="null")
> 2013-11-06 15:07:29,735 DEBUG Generated plugins in 0.000013687 seconds
> 2013-11-06 15:07:29,737 DEBUG Calling createAppender on class
> org.apache.logging.log4j.core.appender.ConsoleAppender for element Console
> with params(PatternLayout(%d{DATE} %-5p LJX2 %c{1}: %m%n), null,
> target="SYSTEM_OUT", name="log-test",follow="null", ignoreExceptions="null")
> 2013-11-06 15:07:29,739 DEBUG Jansi is not installed, cannot find
> org.fusesource.jansi.WindowsAnsiOutputStream2013-11-06 15:07:29,740 DEBUG
> Calling createAppenders on class
> org.apache.logging.log4j.core.config.plugins.AppendersPlugin for element
> Appenders with params(Appenders={log-test})
> 2013-11-06 15:07:29,742 DEBUG Generated plugins in 0.000012832 seconds
> 2013-11-06 15:07:29,743 DEBUG Calling createAppenderRef on class
> org.apache.logging.log4j.core.config.AppenderRef for element AppenderRef with
> params(ref="log-test", level="null", null)
> 2013-11-06 15:07:29,746 DEBUG Calling createLogger on class
> org.apache.logging.log4j.core.config.LoggerConfig for element Logger with
> params(additivity="false", level="debug", name="top.Log4J2TestApp",
> includeLocation="null", AppenderRef={log-test}, Properties={},
> Configuration(log4j2.xml), null)
> 2013-11-06 15:07:29,749 DEBUG Calling createAppenderRef on class
> org.apache.logging.log4j.core.config.AppenderRef for element AppenderRef with
> params(ref="log-test", level="null", null)
> 2013-11-06 15:07:29,751 DEBUG Calling createLogger on class
> org.apache.logging.log4j.core.config.LoggerConfig$RootLogger for element Root
> with params(additivity="null", level="trace", includeLocation="null",
> AppenderRef={log-test}, Properties={}, Configuration(log4j2.xml), null)
> 2013-11-06 15:07:29,754 DEBUG Calling createLoggers on class
> org.apache.logging.log4j.core.config.plugins.LoggersPluginfor element Loggers
> with params(Loggers={top.Log4J2TestApp, root})
> 2013-11-06 15:07:29,755 DEBUG Reconfiguration completed
> 06 Nov 2013 15:07:29,763 WARN LJX2 Log4J2TestApp: =========== Test
> message: 0 ================
> ....
> 06 Nov 2013 15:07:36,766 WARN LJX2 Log4J2TestApp: =========== Test
> message: 7 ================
> 2013-11-06 15:07:51,450 DEBUG ServletContext not present - WebLookup
> not added
> 2013-11-06 15:07:51,451 DEBUG Shutting down OutputStreamManager
> SYSTEM_OUT
> {code}
> The StatusLogger tab in the log4j-jmx-gui does have one exception but it
> would seem to have nothing to do with the loggers.
> {code}
> 2013-11-06 15:41:01,403 WARN Multiple logging implementations found:
> Factory: org.apache.logging.log4j.core.impl.Log4jContextFactory,
> Weighting: 10
> Using factory: org.apache.logging.log4j.core.impl.Log4jContextFactory
> 2013-11-06 15:41:01,505 WARN JmDNS or serviceInfo class not found
> java.lang.ClassNotFoundException: javax.jmdns.JmDNS
> at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:171)
> at
> org.apache.logging.log4j.core.net.MulticastDNSAdvertiser.initializeJMDNS(MulticastDNSAdvertiser.java:228)
> at
> org.apache.logging.log4j.core.net.MulticastDNSAdvertiser.<clinit>(MulticastDNSAdvertiser.java:41)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:171)
> at
> org.apache.logging.log4j.core.config.plugins.PluginManager.decode(PluginManager.java:241)
> at
> org.apache.logging.log4j.core.config.plugins.PluginManager.collectPlugins(PluginManager.java:152)
> at
> org.apache.logging.log4j.core.config.plugins.PluginManager.collectPlugins(PluginManager.java:130)
> at
> org.apache.logging.log4j.core.pattern.PatternParser.<init>(PatternParser.java:116)
> at
> org.apache.logging.log4j.core.pattern.PatternParser.<init>(PatternParser.java:102)
> at
> org.apache.logging.log4j.core.layout.PatternLayout.createPatternParser(PatternLayout.java:183)
> at
> org.apache.logging.log4j.core.layout.PatternLayout.<init>(PatternLayout.java:115)
> at
> org.apache.logging.log4j.core.layout.PatternLayout.createLayout(PatternLayout.java:219)
> at
> org.apache.logging.log4j.core.config.DefaultConfiguration.<init>(DefaultConfiguration.java:51)
> at
> org.apache.logging.log4j.core.LoggerContext.<init>(LoggerContext.java:63)
> at
> org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.locateContext(ClassLoaderContextSelector.java:217)
> at
> org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:114)
> at
> org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:81)
> at
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:83)
> at
> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:34)
> at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:387)
> at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:332)
> at top.Log4J2TestApp.main(Log4J2TestApp.java:10)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
> 2013-11-06 15:41:01,612 DEBUG Generated plugins in 0.000017537 seconds
> 2013-11-06 15:41:01,625 DEBUG Calling createLayout on class
> org.apache.logging.log4j.core.layout.PatternLayout for element PatternLayout
> with params(pattern="%d{DATE} %-5p LJX2 %c{1}: %m%n",
> Configuration(log4j2.xml), null, charset="null", alwaysWriteExceptions="null")
> 2013-11-06 15:41:01,627 DEBUG Generated plugins in 0.000011977 seconds
> 2013-11-06 15:41:01,629 DEBUG Calling createAppender on class
> org.apache.logging.log4j.core.appender.ConsoleAppender for element Console
> with params(PatternLayout(%d{DATE} %-5p LJX2 %c{1}: %m%n), null,
> target="SYSTEM_OUT", name="log-test", follow="null", ignoreExceptions="null")
> 2013-11-06 15:41:01,631 DEBUG Jansi is not installed, cannot find
> org.fusesource.jansi.WindowsAnsiOutputStream
> 2013-11-06 15:41:01,632 DEBUG Calling createAppenders on class
> org.apache.logging.log4j.core.config.plugins.AppendersPlugin for element
> Appenders with params(Appenders={log-test})
> 2013-11-06 15:41:01,633 DEBUG Generated plugins in 0.000011977 seconds
> 2013-11-06 15:41:01,635 DEBUG Calling createAppenderRef on class
> org.apache.logging.log4j.core.config.AppenderRef for element AppenderRef with
> params(ref="log-test", level="null", null)
> 2013-11-06 15:41:01,637 DEBUG Calling createLogger on class
> org.apache.logging.log4j.core.config.LoggerConfig for element Logger with
> params(additivity="false", level="debug", name="top.Log4J2TestApp",
> includeLocation="null", AppenderRef={log-test}, Properties={},
> Configuration(log4j2.xml), null)
> 2013-11-06 15:41:01,640 DEBUG Calling createAppenderRef on class
> org.apache.logging.log4j.core.config.AppenderRef for element AppenderRef with
> params(ref="log-test", level="null", null)
> 2013-11-06 15:41:01,642 DEBUG Calling createLogger on class
> org.apache.logging.log4j.core.config.LoggerConfig$RootLogger for element Root
> with params(additivity="null", level="trace", includeLocation="null",
> AppenderRef={log-test}, Properties={}, Configuration(log4j2.xml), null)
> 2013-11-06 15:41:01,644 DEBUG Calling createLoggers on class
> org.apache.logging.log4j.core.config.plugins.LoggersPlugin for element
> Loggers with params(Loggers={top.Log4J2TestApp, root})
> 2013-11-06 15:41:01,646 DEBUG Reconfiguration completed
> {code}
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]