Maximo Activity Dashboard (PerfMon)
Maximo PerfMon is a diagnostic tool that tracks server-side performance by capturing request times, SQL execution details, and MBO activity. It is enabled through a simple change in the web.xml file followed by redeploying the Maximo EAR. Once activated, its dashboard can be accessed via PerfMon.jsp, though it should be used only briefly because it impacts system performance.
Ankit Chaudhary
11/27/20252 min read
Understanding the Maximo Activity Dashboard (PerfMon): A Practical Guide
When working with IBM Maximo, performance issues can occasionally disrupt smooth operations—especially in large or heavily customized environments. To troubleshoot such bottlenecks, Maximo provides a built-in tool known as the Maximo Activity Dashboard, commonly referred to as PerfMon.
Introduced in Maximo 7, PerfMon offers deep insights into server-side processing and is invaluable for diagnosing slow UI interactions, heavy SQL queries, or inefficient MBO behavior. This guide explains what PerfMon is, how to enable it, and how to use it effectively.
What is PerfMon?
The Maximo Activity Dashboard (PerfMon) is a server-side performance monitoring interface designed to help administrators and developers debug performance-related issues.
Once enabled, it provides detailed data on each request sent from the UI to the Maximo server.
Key Capabilities of PerfMon
PerfMon captures performance metrics at multiple levels, including:
1. Server-Side Request Processing
Total response time for each user action
Average response time for similar request types
The navigation event or UI action that triggered the request
2. MBO (Maximo Business Object) Execution Details
Total number of SQL statements executed
How often each SQL was run
Actual execution time for each SQL
Number of SQL statements exceeding 100 ms
Total MBOs generated during the request
3. Oracle-Specific Benefits
If Maximo is using an Oracle database, PerfMon can also display Explain Plans for executed SQL, making it easier to identify full table scans or inefficient access paths.
Important Warning
Do NOT leave PerfMon enabled on a production server longer than necessary.
PerfMon introduces overhead that can significantly degrade performance.
Only enable it temporarily for diagnostics
How to Enable PerfMon in Maximo
Enabling PerfMon is straightforward and involves modifying the web.xml file.
Step 1: Locate the web.xml File
Navigate to:
<maximo install folder>\<EAR>\maximouiweb\WEB-INF\web.xml
Step 2: Add or Uncomment the PerfMon Filter
Insert (or uncomment) the following code:
Filter Definition
Filter Mapping
Step 3: Rebuild & Redeploy the Maximo EAR
Follow your standard procedure for:
Rebuilding the Maximo EAR (maximo.ear)
Redeploying it to WebSphere / WebLogic
A full application server restart is required for the changes to take effect.
Step 4: Create a System Property in Maximo
When set to true you will be able to capture logs on Activity Dashboard.
When set to false you will not be able to capture logs on Activity Dashboard.
Step 5: Open the PerfMon Dashboard in a Separate Browser Tab
http://<hostname>:<port>/maximo/webclient/utility/profiler/PerfMon.jsp
What You’ll See
The dashboard displays:
A list of server requests
Response times
Clickable details for each request
Selecting “View Server Request” will show deeper insights such as:
SQL execution time
MBO counts
Stack traces
Slow SQL calls
Navigation history associated with each request
This makes it much easier to pinpoint slow screens, inefficient queries, or custom code issues.







