Monitoring Application Performance using Websphere Request Metrics
Version 6.x of WebSphere introduced Request Metrics (PMRM), which unlike Performance Monitoring Infrastructure (PMI) metrics, are transaction based.
PMRM can be a useful first step in performance analysis of your application. The PMRM records show the elapsed time for each request.
The PMRM records are written to the SystemOut log file for the JVM in which the request is processed. In a Network Deployment configuration, the WebSphere Http Plugin running inside the web server also writes PMRM records to its http-plugin.log file giving a composite view of application performance across all JVM’s.
The log records contains information about the flow of the transaction through the WebSphere JVMs. The last fields are of particular interest during performance monitoring.
The SystemOut file contains
1. Name of servlet
2. Response time
In addition, the web server http-plugin.log file contains
3. Size of the request
4. Size of the response
How to Activate Request Metrics ?
Select “Request Metrics” & you will a see screen below.
We can also set filters on modules to be logged
Let’s say we want to trace JDBC connections & transaction time.
Choose Custom -> JDBC & click “Standard logs” option to log information at SystemOut.log & http-plugin.log.
Once activated you will see details as below at Systemout.log
[16/08/11 15:23:58:529 BST] 000000e0 PmiRmArmWrapp I PMRM0003I: parent:ver=1,ip=172.30.9.24,time=1313495871159,pid=11183,reqid=16634,event=1 – current:ver=1,ip=172.30.9.24,time=1313495871159,pid=11183,reqid=16641,event=1 type=JDBC detail=java.sql.PreparedStatement.executeQuery() elapsed=0
[16/08/11 15:25:08:956 BST] 000000df PmiRmArmWrapp I PMRM0003I: parent:ver=1,ip=172.30.9.24,time=1313495871159,pid=11183,reqid=469,event=1 – current:ver=1,ip=172.30.9.24,time=1313495871159,pid=11183,reqid=522,event=1 type=JDBC detail=java.sql.PreparedStatement.executeQuery() elapsed=1
You should see similar records in http-plugin.log