How to get performance data from WebSphere over http

In certain scenarios you want to easily consume performance statistics from your WebSphere instance. One way is to establish a JMX connection to the JVM and gather the metrics.
However remote JMX connections are not firewall friendly as they require a non standard port for communication. This non standard port has also to be defined in the WebSphere configuration.

WebSphere provides a small and easy to install servlet applications that delivers performance data over http in a xml format.
The application is called  PerfServletApp.ear, Performance Servlet or PerfServlet.

The installation is straight forward. Navigate to Applications > Application types > WebSphere enterprise applications > Install
and deploy the PerfServletApp.ear located in
After deployment the Performance Servlet is reachable under the URL

http://<your hostname>:<your http port>/wasPerfTool/servlet/perfservlet

Filtering the results

The performance servlet provides a basic filter functionality for the xml results. To filter the results simply add parameters to the url. IBM defined serveral parameters:
  • Node: http://localhost:9082/wasPerfTool/servlet/perfservlet?node=Marcel-PCNode03
  • Server: http://localhost:9082/wasPerfTool/servlet/perfservlet?server=server1
  • Module (!): http://localhost:9082/wasPerfTool/servlet/perfservlet?module=testmodule1
  • etc.
The filters can be combined:

The PerfServlet has a kind of man page:

However the PerfServlet is limited and not really for use in large network deployment topologies.
More information: