Before using a JBoss monitor, several of the JBoss server jars must be installed in NeoLoad jmxlib/jboss
directory.
To connect NeoLoad to JBoss 4.x, several of the JBoss server jars must be installed in NeoLoad jmxlib/jboss
directory.
Copy to <neoload>/jmxlib/jboss
directory the following files from the JBoss directory:
<jboss>/client/jbossall-client.jar
<jboss>/lib/jboss-jmx.jar
<jboss>/server/<your-jboss-instance>/lib/jboss-management.jar
After copying the files, it is unnecessary to restart NeoLoad. The files are automatically synchronized with the Monitoring Agent once the changes have been made.
To connect NeoLoad to JBoss 5.x, several of the JBoss server jars must be installed in NeoLoad jmxlib/jboss
directory.
Copy to <neoload>/jmxlib/jboss
directory the following files from the JBoss directory:
<jboss>/lib/jboss-jmx.jar
<jboss>/common/lib/jboss-management.jar
<jboss>/client/jboss-client.jar
<jboss>/client/jboss-common-core.jar
<jboss>/client/jboss-integration.jar
<jboss>/client/jboss-javaee.jar
<jboss>/client/jboss-logging-spi.jar
<jboss>/client/jboss-remoting.jar
<jboss>/client/jboss-security-spi.jar
<jboss>/client/jboss-serialization.jar
<jboss>/client/jbosssx-as-client.jar
<jboss>/client/jbosssx-client.jar
<jboss>/client/jmx-invoker-adaptor-client.jar
<jboss>/client/jnp-client.jar
After copying the files, it is unnecessary to restart NeoLoad. The files are automatically synchronized with the Monitoring Agent once the changes have been made.
Before creating a JBoss 6.X - 7.0 monitor, the JBoss server must be configured to accept JMX connections. In these versions, JBoss server uses a J2EE 6 -compatible connector. Using this configuration, no libraries need to be added to NeoLoad.
<JBoss>/server/<instance>/deploy/jmx-jboss-beans.xml
file. See the file in the default instance for a sample configuration.<!-- ... -->
<bean name="JMXConnector" class="org.jboss.system.server.jmx.JMXConnector">
<!-- specify the NIC that will run the JMX connector -->
<property name="hostname">
<value-factory bean="ServiceBindingManager" method="getStringBinding"
parameter="jboss.remoting:service=JMXConnectorServer,protocol=rmi"/>
</property>
<!-- specify the port that the JMX connector is looked up through (used in JMXServiceURL) -->
<!-- commenting this out, will use 1090 as default -->
<property name="rmiRegistryPort" class="int">
<!-- Get the port from the ServiceBindingManager -->
<value-factory bean="ServiceBindingManager" method="getIntBinding"
parameter="jboss.remoting:service=JMXConnectorServer,protocol=rmi"/>
</property>
<!-- specify the port that the RMI server listens to -->
<!-- commenting this out, will use 1091 as default -->
<property name="rmiServerPort" class="int">
<!-- Get the port from the ServiceBindingManager -->
<value-factory bean="ServiceBindingManager" method="getIntBinding"
parameter="jboss.remoting:service=JMXConnectorServer,protocol=rmiServer"/>
</property>
<!-- ... -->
</bean>
<!-- ... -->
<JBoss>/standalone/configuration/standalone.xml
file. Note that the org.jboss.as.jmx
extension must be activated.By default, and for security reasons, monitoring the JMX interface of JBoss servers version JBoss 7.0 is only available locally. To activate the remote monitoring of the server, the configuration file <JBoss7.0>/standalone/configuration/standalone.xml
must be edited and the JMX socket-binding on the public interface must be defined:
<!-- ... -->
<interfaces>
<!-- ... -->
<interface name="public">
<any-address/>
</interface>
</interfaces>
<socket-binding-group name="standard-sockets" default-interface="public">
<!-- ... -->
<socket-binding name="jmx-connector-registry" interface="public" port="1090"/>
<socket-binding name="jmx-connector-server" interface="public" port="1091"/>
<!-- ... -->
</socket-binding-group>
<!-- ... -->
Several JBoss server versions are supported, such as JBoss 4.0.X, JBoss 4.2.X, JBoss 5.X, JBoss 6.X and JBoss 7.X. NeoLoad automatically hides any counters that are not supported by a particular JBoss version.
Defining a connection to a JBoss server requires the name or IP address of the machine to be monitored, as well as the connection port (the default port is 1099
). The port is the JBoss server JNP connection port.
For JBoss 4.0.X and 4.2.X, connection port is the Port
attribute in the Mbean referenced by org.jboss.naming.NamingService
in the server\<your-jboss-instance>\conf\jboss-service.xml
file.
<mbean code="org.jboss.naming.NamingService"
name="jboss:service=Naming"
xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
...
<!-- The listening port for the bootstrap JNP service. Set this to -1
to run the NamingService without the JNP invoker listening port.
-->
<attribute name="Port">1099</attribute>
...
For JBoss 5.0.X, connection port is the Port
attribute of the service named jboss:service=Naming
in the server\<your-jboss-instance>\conf\bindings.xml
file.
<!-- Naming Service -->
<bean class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">jboss:service=Naming</property>
<property name="bindingName">Port</property>
<property name="port">1099</property>
</bean>
For JBoss 5.1.X, connection port is the Port
attribute of the service named jboss:service=Naming
in the server\<your-jboss-instance>\conf\bindingservice.beans\META-INF\bindings-jboss-beans.xml
file.
<!-- Naming Service -->
<bean class="org.jboss.services.binding.ServiceBindingMetadata">
<property name="serviceName">jboss:service=Naming</property>
<property name="bindingName">Port</property>
<property name="port">1099</property>
</bean>
If the JBoss server has been configured for secured JNP, a valid user account must be provided with which to connect to the JBoss Administration Console.
Port
attribute in the jboss-service.xml
file)RmiPort
attribute in the jboss-service.xml
file)RmiObjectPort
attribute in the jboss-service.xml
file)NeoLoad makes it possible to create a new monitor either using the monitored machine creation wizard, as described in Create and configure a monitored machine, or from an existing monitored machine, as described in Create and configure a monitor.
NeoLoad displays a list of the EARs (Enterprise Archive) and WARs (Web Application archive) deployed on the configured server. It then automatically selects the most appropriate counters for each of the selected applications.
All JBoss counters are documented here. Depending on the JBoss version, some counters may be automatically hidden because they are not supported by this particular JBoss version.