Find Out How

Print Friendly Version

Monitoring JBoss

Prerequisites

In order to monitor a JBoss server, the SOASTA sBox must be able to establish a TCP/IP connection to the server. If you are not sure how to enable this, consult the JBoss documentation.

 

Monitoring requires access to the following three TCP/IP ports:

  • The Naming service port (usually 1099)
  • The Naming service RMI port (usually 1098)
  • The JRMP Invoker service RMI port (usually 4444).

If a firewall prevents TCP/IP access, see the topic Monitoring a Server Behind a Firewall.

 

Supported versions

SOASTA CloudTest can currently monitor JBoss 4.2.

Steps

  1. In the Central list, select Monitoring Server Groups.

Central list, Monitoring Server Groups

  1. Click the New Monitoring Server Group icon. The Monitoring Server / Monitor wizard appears:

New Monitor Server Group icon

  1. Select Monitor Server and click Next. The Name and Connection step is shown.
 
  1. Type a name for the Monitoring Server and optionally provide a description. Finally type the hostname or IP address of the server into the Host field and click Next.

Name and Connection

 

  1. The Resources step is shown. Check "App Servers" and click Next.

App Servers

 

  1. Select JBoss, then enter the JBoss Naming Service port number, the user name, and password. The user name and password are not always required. Check with your network administrator.

JBoss

 

  1. Click the Test Connection button to test the connection. If the connection is successful, you will see a pop-up containing some information about the JBoss server. If the connection fails, you will see an error message explaining what went wrong.
 
  1. Click Next.
 
  1. Review the information to be sure it is correct, then check the "Create a new Monitor for this Monitor Server" box and click Finish.

 

  1. Enter a name for the Monitor and an optional description, then click Next.

 

  1. At this point you can choose which statistics you are interested in. For each statistic, you can choose a "sample rate" which determines how often that statistic will be collected.

In addition to the standard statistics that are offered (for example, "JVM Heap Size"), you can track the value of any JMX MBean attribute. For example, to track the current number of messages in the JMS topic named "testTopic", check the "JMX Attribute" box, and in the "Arguments" column enter:

jboss.mq.destination:name=testTopic,
service=Topic:AllMessageCount

You can use the "Add Custom Object" button to add as many JMX MBean attributes as you like. Some more examples:

  • To track the total amount of time spent processing HTTP requests since JBoss started, in the "Arguments" column enter:
jboss.web:name=http-0.0.0.0-8080,
type=GlobalRequestProcessor:processingTime
  • To track the current number of threads in the HTTP thread pool, in the "Arguments" column enter:
jboss.web:name=http-0.0.0.0-8080,
type=ThreadPool:currentThreadCount
  • To track the current number of open database connections used by the data source named "myDataSource", in the "Arguments" column enter:
jboss.jca:name=jdbc/myDataSource,
service=ManagedConnectionPool:ConnectionCount

 

 
   

Next steps