Uploaded image for project: 'WildFly Swarm'
  1. WildFly Swarm
  2. SWARM-204

Exception when connecting Jolokia JVM agent.

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 1.0.0.Alpha4
    • Fix Version/s: 2016.12.0
    • Component/s: None
    • Labels:
      None

      Description

      Using the Jolokia JVM agent with Swarm doesn't work currently. See the exception below.

      The Jolokia JVM agent is used in the Fabric8 base images as well as in the S2I OpenShift Builder Images

       java -javaagent:jolokia-jvm-1.3.3-SNAPSHOT-agent.jar -jar example-servlet-war-swarm.jar
      objc[15593]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java and /Library/Java/JavaVirtualMaachines/jdk1.8.0_40.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined.
      I> No access restrictor found, access to all MBean is allowed
      Jolokia: Agent started with URL http://127.0.0.1:8778/jolokia/
      tmpDir: /var/folders/cs/gzp3xf6j6vn_tfzftszdcq6c0000gn/T/
      Dec 15, 2015 10:50:51 AM org.jboss.msc.service.ServiceContainerImpl <clinit>
      INFO: JBoss MSC version 1.2.6.Final
      Dec 15, 2015 10:50:51 AM org.jboss.as.server.ApplicationServerService start
      INFO: WFLYSRV0049: WildFly Core 2.0.0.CR8 "Kenny" starting
      Dec 15, 2015 10:50:51 AM org.jboss.as.controller.AbstractOperationContext executeStep
      ERROR: WFLYCTL0013: Operation ("parallel-extension-add") failed - address: ([])
      java.lang.RuntimeException: WFLYCTL0079: Failed initializing module org.jboss.as.logging
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$1.execute(ParallelExtensionAddHandler.java:115)
      	at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:890)
      	at org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:659)
      	at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:370)
      	at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1336)
      	at org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:459)
      	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:387)
      	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:349)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:392)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:365)
      	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:299)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: WFLYLOG0078: The logging subsystem requires the log manager to be org.jboss.logmanager.LogManager. The subsystem has not be initialized and cannot be used. To use JBoss Log Manager you must add the system property "java.util.logging.manager" and set it to "org.jboss.logmanager.LogManager"
      	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
      	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$1.execute(ParallelExtensionAddHandler.java:107)
      	... 11 more
      Caused by: java.lang.IllegalStateException: WFLYLOG0078: The logging subsystem requires the log manager to be org.jboss.logmanager.LogManager. The subsystem has not be initialized and cannot be used. To use JBoss Log Manager you must add the system property "java.util.logging.manager" and set it to "org.jboss.logmanager.LogManager"
      	at org.jboss.as.logging.LoggingExtension.initialize(LoggingExtension.java:147)
      	at org.jboss.as.controller.extension.ExtensionAddHandler.initializeExtension(ExtensionAddHandler.java:131)
      	at org.jboss.as.controller.extension.ExtensionAddHandler.initializeExtension(ExtensionAddHandler.java:104)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$ExtensionInitializeTask.call(ParallelExtensionAddHandler.java:144)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$ExtensionInitializeTask.call(ParallelExtensionAddHandler.java:127)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:320)
       
      Dec 15, 2015 10:50:51 AM org.jboss.as.server.ServerService boot
      FATAL: WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.
      Exception in thread "main" java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:497)
      	at org.wildfly.swarm.bootstrap.Main.invoke(Main.java:86)
      	at org.wildfly.swarm.bootstrap.Main.run(Main.java:50)
      	at org.wildfly.swarm.bootstrap.Main.main(Main.java:39)
      Caused by: java.util.concurrent.ExecutionException: Operation failed
      	at org.jboss.threads.AsyncFutureTask.operationFailed(AsyncFutureTask.java:74)
      	at org.jboss.threads.AsyncFutureTask.get(AsyncFutureTask.java:268)
      	at org.jboss.as.server.SelfContainedContainer.start(SelfContainedContainer.java:113)
      	at org.wildfly.swarm.container.runtime.RuntimeServer.start(RuntimeServer.java:173)
      	at org.wildfly.swarm.container.Container.start(Container.java:318)
      	at org.wildfly.swarm.Swarm.simpleMain(Swarm.java:62)
      	at org.wildfly.swarm.Swarm.main(Swarm.java:55)
      	... 7 more
      Caused by: java.lang.Exception: WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.
      	at org.jboss.as.server.BootstrapListener.bootFailure(BootstrapListener.java:87)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:384)
      	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:299)
      	at java.lang.Thread.run(Thread.java:745)
      

      Connecting the agent after the example has start up with via Java attach API works though:

      java -jar jolokia-jvm-1.3.3-SNAPSHOT-agent.jar example-servlet-war-swarm
       
      2015-12-15 11:02:11,932 INFO  [stdout] (Attach Listener) I> No access restrictor found, access to all MBean is allowed
      2015-12-15 11:02:12,003 INFO  [stdout] (Attach Listener) Jolokia: Agent started with URL http://127.0.0.1:8778/jolokia/
      Started Jolokia for process matching "swarm" (PID: 15953)
      http://127.0.0.1:8778/jolokia/
      

      I guess it's a problem that the agent kicks in early when starting up, using some not yet initialised base functionality (like logging) which was replaced by swarm.

      Jolokia doesn't use any logging framework directly (but prints out the agent URL on System.out to make prominent notice that an agent is running for accessing JMX)

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  heiko.braun Heiko Braun
                  Reporter:
                  rhuss Roland Huß
                • Votes:
                  2 Vote for this issue
                  Watchers:
                  7 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: