Monitoring of distributed applications
First Claim
1. A monitoring method comprising:
- identifying, by a monitoring system, a plurality of components of a distributed application including a first component associated with a first technology at a first computing device and a second component associated with a second technology at a second computing device, wherein the first technology is different from the second technology;
attaching, by the monitoring system, a first technology specific interceptor to the first component based on the associated first technology and intercepting messages that are sent by or received by the first component using the first technology specific interceptor;
attaching, by the monitoring system, a second technology specific interceptor to the second component based on the associated second technology and intercepting messages that are sent by or received by the second component using the second technology specific interceptor;
wherein the first technology specific interceptor and the second technology specific interceptor are distinct; and
in response to detecting a particular intercepted message;
generating at least one potential work item based on the particular intercepted message; and
determining whether to schedule the at least one potential work item based on a predicted impact of the at least one potential work item on performance of the distributed application and determining whether to drop the at least one potential work item without scheduling the at least one potential work item in response to determining that the predicted impact of the at least one potential work item on performance of the distributed application is greater than an acceptable performance impact threshold;
wherein the at least one potential work item is scheduled for execution when the predicted impact of the at least one potential work item on performance is below the acceptable performance impact threshold, and wherein the at least one potential work item is not scheduled for execution when the predicted impact of the at least one potential work item is above the acceptable performance impact threshold.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer-readable media are disclosed for monitoring a distributed application. A particular method identifies a plurality of components of a distributed application. The method also identifies a specific technology associated with a particular component and attaches a technology specific interceptor to the particular component based on the identified specific technology. The method includes intercepting messages that are sent by or received by the particular component using the technology specific interceptor. At least one potential work item is generated based on the intercepted messages. The method includes determining whether to schedule the at least one potential work item for execution based on a predicted impact of the at least one work potential item on performance of the distributed application.
-
Citations
19 Claims
-
1. A monitoring method comprising:
-
identifying, by a monitoring system, a plurality of components of a distributed application including a first component associated with a first technology at a first computing device and a second component associated with a second technology at a second computing device, wherein the first technology is different from the second technology; attaching, by the monitoring system, a first technology specific interceptor to the first component based on the associated first technology and intercepting messages that are sent by or received by the first component using the first technology specific interceptor; attaching, by the monitoring system, a second technology specific interceptor to the second component based on the associated second technology and intercepting messages that are sent by or received by the second component using the second technology specific interceptor; wherein the first technology specific interceptor and the second technology specific interceptor are distinct; and in response to detecting a particular intercepted message; generating at least one potential work item based on the particular intercepted message; and determining whether to schedule the at least one potential work item based on a predicted impact of the at least one potential work item on performance of the distributed application and determining whether to drop the at least one potential work item without scheduling the at least one potential work item in response to determining that the predicted impact of the at least one potential work item on performance of the distributed application is greater than an acceptable performance impact threshold; wherein the at least one potential work item is scheduled for execution when the predicted impact of the at least one potential work item on performance is below the acceptable performance impact threshold, and wherein the at least one potential work item is not scheduled for execution when the predicted impact of the at least one potential work item is above the acceptable performance impact threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A monitoring system comprising:
-
a plurality of technology specific interceptors including a first technology specific interceptor associated with a first technology component of a distributed application located at a first computing device and a second technology specific interceptor associated with a second technology component of the distributed application located at a second computing device, wherein the first technology component is associated with a first technology and the second technology component is associated with a second technology and where the first technology is a different technology from the second technology, the first technology specific interceptor and the second technology specific interceptor are distinct and the first computing device is different from the second computing device, and wherein the monitoring system associates the first technology specific interceptor to the first technology component based on the first technology and associates the second technology specific interceptor to the second technology component based on the second technology; and a technology agnostic interceptor manager at a third computing device; wherein the first technology specific interceptor is configured to; track operation of a first distributed application component of the distributed application, the first distributed application component associated with the first technology, including intercepting messages sent by and received by the first distributed application component; generate work items responsive to detecting the intercepted messages based on the tracked operation of the first distributed application component; and send the work items based on the tracked operation of the first distributed application component to the technology agnostic interceptor manager; wherein the second technology specific interceptor is configured to; track operation of a second distributed application component of the distributed application, the second distributed application component associated with the second technology, including intercepting messages sent by and received by the second distributed application component; generate work items based on the tracked operation of the second distributed application component; and send the work items based on the tracked operation of the second distributed application component to the technology agnostic interceptor manager; and wherein the technology agnostic interceptor manager includes a plurality of work item managers, including a first work item manager associated with the first technology specific interceptor and a second work item manager associated with the second technology specific interceptor; wherein each work item manager is associated with a particular technology specific interceptor and is configured to; receive work items from the particular technology specific interceptor; queue the received work items in a work item queue; compare an impact of a particular work item on performance of the distributed application to an acceptable performance impact threshold of the distributed application; schedule the particular work item for execution when the impact is less than the acceptable performance impact threshold; and drop the particular work item without scheduling the particular work item for execution when the impact is greater than the acceptable performance impact threshold. - View Dependent Claims (17, 18, 19)
-
Specification