The HTTP Client Request Monitor is responsible for gathering performance information of outgoing HTTP requests from the application; and monitoring whether a particular request exceeds the defined threshold.
JMX Interface Name: com.ibm.team.server.monitoring.management.MonitorRollupMBean
JMX Object Name: team.server.<application public URI context>@<port>:type=HTTP Client Request
JMX Object Name Example: team.server./jts@9443:type=HTTP Client Request
A JMX object of this "type" will be created for each monitored request URI. Different HTTP client requests to the same URI will be tracked and monitored by the same JMX object (identified by the URI); therefore the statistics gathered by that JMX object will consist of information of all the different outgoing HTTP client requests served at that URI.
- HTTP Client Request Monitor JMX Object Name: team.server.<application public URI context>@<port>:type=HTTP Client Request
- HTTP Client Request JMX Object Name: team.server.<application public URI context>@<port>:type=HTTP Client Request,name="<request URI>"
The HTTP Client Request performance metrics information are rolled up from the performance information from all the individual monitored request URIs invocations.
Visually, the structure is like the following:
team.server./<URL>@<port>:type=HTTP Client Request
|
|
|---- team.server./<URL>@<port>:type=HTTP Client Request,name="<requestURI>"
|---- team.server./<URL>@<port>:type=HTTP Client Request,name="<requestURI2>"
...
Monitor Attributes
Following are the attributes exposed by the HTTP Client Request
JMX Attribute |
JMX Type |
Is Writeable? |
Default Value |
Description |
AverageResponseTime |
long |
No |
0 |
Average response time from all the monitored HTTP requests |
Count |
long |
No |
0 |
Counter of all monitored operations |
Duration |
long |
No |
0 |
Total duration of monitored requests processing |
Enabled |
boolean |
Yes |
false |
Whether this monitor is enabled. Default is disabled (false), so no performance monitoring of HTTP requests is performed |
MaximumResponseTime |
long |
No |
0 |
Maximum response time of a HTTP request from all the monitored ones |
MinimumResponseTime |
long |
No |
0 |
Minimum response time of a HTTP request from all the monitored ones |
Threshold |
java.lang.Long |
Yes |
10000 |
Defines the maximum allowed time for a HTTP request to be processed. If this time is exceeded a problem will be generated |
TimeSinceLastReset |
long |
No |
0 |
Total time since the last statistics reset |
Note the attributes related with time statistics are expressed in milliseconds
Monitor Operations
Child MBeans
This section gathers information regarding MBeans that are contained within this monitor
HTTP Client Request objects
#HTTPAnchor
An instance of a monitored HTTP request type identified by its URI.
JMX Interface Name: com.ibm.team.server.monitoring.jmx.beans.HTTPClientMBean
JMX Object Name: team.server.<application public URI context>@<port>:type=HTTP Client Request,name="<requestURI>"
JMX Object Name Example: team.server./jts@9443:type=HTTP Client Request,name="https://<publicURI>:9443/jts/application-about"
It is important to understand that individual client operations can result in several HTTP requests performed, and all of these are tracked and monitored.
Attributes
JMX Attribute |
JMX Type |
Is Writeable? |
Default Value |
Description |
AverageResponseTime |
long |
No |
0 |
Average response time for all the monitored requests |
Count |
long |
No |
0 |
Counter of all monitored operations |
Duration |
long |
No |
0 |
Total duration sum of the duration of the monitored requests |
MaximumResponseTime |
long |
No |
0 |
Maximum response time of the monitored requests |
MinimumResponseTime |
long |
No |
0 |
Minimum response time of the monitored requests |
TimeSinceLastReset |
long |
No |
0 |
Total time since the last statistics reset |
Note the attributes related with time statistics are expressed in milliseconds
Operations
HTTP Client Request Problems
When a HTTP Client Request execution exceeds the monitor defined threshold, a
Problem HTTP Client Request object is created. This object provides information that uniquely identifies the particular HTTP client request being served, that exceeded the threshold. The generated JMX object follows the convention:
JMX Interface Name: com.ibm.team.server.monitoring.jmx.beans.ResourceInstanceMBean
JMX Object Name: team.server.<application public URI context>@<port>:type=Problem HTTP Client Request,name="<requestURI>",id=ID
JMX Object Name Example: team.server./ccm@9443:type=Problem HTTP Client Request,name="https://sp013146.ibm.com:9443/jts/application-about",id=1d19f35a-54ab-4bb6-8318-0eac09fad878
Where
name
matches the one of the HTTP Client Request monitor object of which a execution originated this problem. A different problem object instance (with different ID) will be created each request call exceeding the defined threshold.
Attributes
Following are the attributes exposed by the Problem HTTP Client Request objects
JMX Attribute |
JMX Type |
Is Writeable? |
Default Value |
Description |
Duration |
long |
No |
0 |
Total duration of the operation. This value will be greater than the defined threshold |
FinishDate |
Date |
No |
Finish Date/time |
Date/time the operation finished |
Identifier |
String |
No |
UUID |
Object UUID |
Links |
TabularType (Open Type) |
No |
|
Links to associated performance information. This attribute is not currently used in this release |
Name |
String |
No |
Object name |
The computed name of the request URI. It matches the value of the name entry of the JMX Object name |
RDF |
String |
No |
|
RDF Representation of this object. This attribute is not currently used in this release |
StartDate |
Date |
No |
Start Date/time |
Date/time at which the operation started |
ThreadID |
long |
No |
|
The ID of the thread that executed the operation |
ThreadName |
String |
No |
|
Name of the http thread performing the request |
ThreadTraceRDF |
String |
No |
|
The trace of other monitored object invocations along with their associated metrics as RDF. This attribute is not currently used in this release |
URI |
String |
No |
|
This attribute is not currently used in this release |
Operations
External links: