Recently encountered with a jboss performance problem, in order to troubleshoot the problem convenient, decided to open JMX, using jconsole for real-time monitoring to analyze performance. The configuration steps are as follows:
For details see: https://docs.jboss.org/author/display/WFLY8/JMX+subsystem+configuration
1, configure the service side:
A, the Analysis Wildfly tool jconsole, Position: ${jboss_home}/bin/jconsole.sh;
The script actually calls the JDK itself Jconsole.jar, Tools.jar, and wildfly itself Jboss-cli-client.jar, see script jconsole.sh for details
650) this.width=650; "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ("/e/u261/lang/zh-cn/ Images/localimage.png ") no-repeat center;border:1px solid #ddd;" alt= "Spacer.gif"/>
b, open ${jboss_home}/modules/system/layers/base/org/wildfly/extension/io/main/module.xml, add the following red flag three lines
<dependencies>
<module name= "Sun.jdk"/>
<module name= "Org.jboss.staxmapper"/>
<module name= "Org.jboss.as.controller"/>
<module name= "Org.wildfly.security.manager"/>
<module name= "Org.jboss.as.server"/>
<module name= "Org.jboss.as.security" optional= "true"/>
<module name= "Org.jboss.msc"/>
<module name= "org.jboss.logging"/>
<module name= "Org.jboss.xnio"/>
<module name= "Org.jboss.xnio.nio" services= "import"/>
<module name= "Org.picketbox" optional= "true"/>
<module name= "org.jboss.remoting" export= "true"/>
<module name= "Org.jboss.remoting-jmx" export= "true"/>
<module name= "Javax.api"/>
</dependencies>
C, open the ${jboss_home}/domain/configuration/domain.xml file, modify the following JMX tag for each profile, add the red part
<subsystem xmlns= "urn:jboss:domain:jmx:1.3" >
<expose-resolved-model/>
<expose-expression-model/>
<remoting-connector use-management-endpoint= "false"/>
</subsystem>
Note the above two steps have been fixed in version 8.1.0, without modification!!!
2, add monitoring users:
A. Use ${jboss_home}/bin/add-user.sh to add application user, which must be application user
650) this.width=650; "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ("/e/u261/lang/zh-cn/ Images/localimage.png ") no-repeat center;border:1px solid #ddd;" alt= "Spacer.gif"/>
B. Empower the created user in the JBoss Management console to open the http://10.19.xx.xx:9990 console
650) this.width=650; "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ("/e/u261/lang/zh-cn/ Images/localimage.png ") no-repeat center;border:1px solid #ddd;" alt= "Spacer.gif"/>
C, after the completion of the above three steps, restart the Wildfly server, and then perform the ${jboss_home}/bin/jconsole.sh
3, the use of remote Jconsole orJVISUALVM Monitoring
:
A, native install JDK, download Jboss-client.jar (JBoss bin directory)
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M00/79/44/wKioL1aM9wLQchU4AACAiy-Fzcw619.png "title=" Image.png "alt=" Wkiol1am9wlqchu4aacaiy-fzcw619.png "/>
B, run Jconsole, execute command: jconsole-j-djava.class.path= "C:\Program Files (x86) \java\jdk1.7.0_10\bin\jboss-client.jar; C:\Program Files (x86) \java\jdk1.7.0_10\lib\jconsole.jar; C:\Program Files (x86) \java\jdk1.7.0_10\lib\tools.jar "
Enter the remote Call service, for example: service:jmx:http-remoting-jmx://10.19.xx.xx:8080, to fill in the user name and password created before
650) this.width=650; "src="/e/u261/themes/default/images/spacer.gif "style=" Background:url ("/e/u261/lang/zh-cn/ Images/localimage.png ") no-repeat center;border:1px solid #ddd;" alt= "Spacer.gif"/>650 "this.width=650;" src= "http ://s3.51cto.com/wyfs02/m01/79/45/wkiom1am9wert2ckaabdtyb2ory507.png "title=" Image1.png "alt=" Wkiom1am9wert2ckaabdtyb2ory507.png "/>
Note: The port is the HTTP service port for the server, for example, two server,server1 ports are created on the host for 8080,server2 ports of 8180
If you enter service:jmx:http-remoting-jmx://10.19.xx.xx:8080, you are monitoring server1
If you enter service:jmx:http-remoting-jmx://10.19.xx.xx:8180, you are monitoring server2
If you enter service:jmx:http-remoting-jmx://10.19.xx.xx:9990, this is the JVM process that monitors the domain controller (you must fill in the Super Admin user and Secret Code
C, run JVISUALVM, execute command: jvisualvm-cp:a "C:\Program Files (x86) \java\jdk1.7.0_10\bin\jboss-client.jar"
Configuration and Jconsole consistent
This article comes from the "Let's Tune It" blog, so be sure to keep this source http://luckydeluke.blog.51cto.com/10521529/1732230
Jboss jmx monitoring Performance Jconsole JVISUALVM