Model-driven, repository-based application monitoring system
First Claim
1. In a distributed computing environment, a method of enabling events from applications, the method performed upon one or more computer processors, the method comprising;
- declaratively defining an application model correlated to an application, the application model describing operations of the application;
declaratively defining one or more event models correlated to the application model, the event models describing application execution locations where events are desired to be emitted in the execution of the application;
based on the correlation of the event models to the application models, instrumenting the applications with instrumentation code to cause the application to emit events at the execution locations; and
defining an aggregation point for aggregating events wherein aggregating events comprises combining events through logical operations.
2 Assignments
0 Petitions
Accused Products
Abstract
Enabling and processing events. To enable events, an application model correlated to an application is declaratively defined. The application model describes operations of the application. One or more event models correlated to the application model are declaratively defined. The event models describe application execution locations where events are desired to be emitted in the execution of the application. Based on the correlation of the event models to the application models, the applications are instrumented with instrumentation code to cause the application to emit events at the execution locations. To process events an application model is defined. The application model includes one or more observation models. The observation models include a correlation of events to the observation model by defining instrumentation models in the application model. An event is received. The event is applied to the observation model based on the correlation. The event is processed according to the observation model.
149 Citations
18 Claims
-
1. In a distributed computing environment, a method of enabling events from applications, the method performed upon one or more computer processors, the method comprising;
-
declaratively defining an application model correlated to an application, the application model describing operations of the application; declaratively defining one or more event models correlated to the application model, the event models describing application execution locations where events are desired to be emitted in the execution of the application; based on the correlation of the event models to the application models, instrumenting the applications with instrumentation code to cause the application to emit events at the execution locations; and defining an aggregation point for aggregating events wherein aggregating events comprises combining events through logical operations. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of processing events, the method performed upon one or more computer processors, the method comprising;
-
defining an application model, wherein the application model includes one or more observation models, wherein the observation models comprise a correlation of events to the observation model by defining instrumentation models in the application model; receiving an event; applying the event to the correlated observation model based on the correlation; and processing the event according to the observation model, wherein processing the event comprises aggregating events and wherein aggregating events comprises combining events through logical operations. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A monitoring system comprising:
-
a repository, wherein the repository comprises models of applications, wherein the models of applications include instrumentation models correlated to application execution locations where events are desired to be emitted; one or more event processors configured to receive events from an instrumented application, wherein at least one of the one or more event processors is configured to aggregate events; and drivers coupled to repository, wherein the drivers are configured to instrument application code based on the correlation of instrumentation models to application execution locations. - View Dependent Claims (17, 18)
-
Specification