System and methods for monitoring application server performance
First Claim
1. A method of instrumenting Java components installed on an application server in order to enable the Java components to be monitored, the method comprising:
- adding a patch to a class loader class of a Java virtual machine installed on the application server, wherein the patch causes the class loader class to pass Java components to an instrumentation component when said Java components are loaded by the Java virtual machine;
receiving, from a patched version of said class loader class, code of a Java component to be loaded by the Java virtual machine; and
with the instrumentation component, instrumenting said code of the Java component to add functionality for tracking execution times.
9 Assignments
0 Petitions
Accused Products
Abstract
A monitoring system monitors the amount of time spent by specific application components, such as Java components, during execution of specific web site transactions. A probe that runs on an application server initially instruments these components (preferably at component load time) to add code for tracking execution start and stop times. When a monitored transaction is executed by the application server, the probe measures the execution times of the invoked components—preferably at the component method level. The resulting measurement data is reported to a reports server, and is used to provide transaction-specific breakdowns of the amount of time spent by each instrumented component, and optionally each instrumented method within such components. In one embodiment, the probe only monitors transactions initiated by agent-generated transaction request messages that are marked or “colored” for monitoring, and thus ignores transactions initiated by actual users.
156 Citations
4 Claims
-
1. A method of instrumenting Java components installed on an application server in order to enable the Java components to be monitored, the method comprising:
-
adding a patch to a class loader class of a Java virtual machine installed on the application server, wherein the patch causes the class loader class to pass Java components to an instrumentation component when said Java components are loaded by the Java virtual machine;
receiving, from a patched version of said class loader class, code of a Java component to be loaded by the Java virtual machine; and
with the instrumentation component, instrumenting said code of the Java component to add functionality for tracking execution times. - View Dependent Claims (2, 3, 4)
-
Specification