Flexible and safe monitoring of computers
First Claim
1. In a computing environment, a system comprising:
- at least one processor; and
a dynamic query engine, implemented on the at least one processor and configured to at least;
monitor its own resource consumption based on a resource budget;
monitor the at least one processor using one or more queries;
collect monitoring data from one or more data sources via one or more input adapters;
determine that its own resource consumption has reached a limit relative to the resource budget; and
discard at least some portion of the monitoring data collected from the one or more data sources according to a policy in order to remain within the resource budget as the dynamic query engine continues to collect the monitoring data.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a server monitoring technology that is scalable to large numbers of servers, e.g., in a datacenter. Agents on servers run queries to monitor data sources for that server, such as performance counters and other events. The agents monitor their resource usage and those of monitored events to stay within an administrator-specified resource budget (policy), e.g., by modifying the running queries and/or monitoring parameters. A controller receives results of the monitoring, analyzes the results, and takes action as needed with respect to server operation and monitoring. The controller may dynamically update an agent'"'"'s queries, monitoring parameters and/or monitored data post-processing operations. The controller may issue alerts and reports, including alerts indicative of inter-server problems between two or more servers.
21 Citations
20 Claims
-
1. In a computing environment, a system comprising:
-
at least one processor; and a dynamic query engine, implemented on the at least one processor and configured to at least; monitor its own resource consumption based on a resource budget; monitor the at least one processor using one or more queries; collect monitoring data from one or more data sources via one or more input adapters; determine that its own resource consumption has reached a limit relative to the resource budget; and discard at least some portion of the monitoring data collected from the one or more data sources according to a policy in order to remain within the resource budget as the dynamic query engine continues to collect the monitoring data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. In a computing environment, a system comprising:
-
one or more computer servers; one or more agents implemented on the one or more computer servers, an individual agent operating to; collect data via one or more data sources of a server using one or more queries related to monitoring the server on which the individual agent is implemented, wherein a first query of the one or more queries corresponds to a pipeline of operations and a first operation of the pipeline of operations is a join operation; monitor resource usage of the individual agent during the data collection based on; a resource consumption budget relative to the individual agent during the data collection; determine that the resource usage of the individual agent has reached a limit of the resource consumption budget; discard at least some portion of the collected data from the one or more data sources according to a policy in order to remain within the resource consumption budget as the individual agent continues to collect data; and process the remaining collected data into monitoring results for the server on which the individual agent is implemented. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. In a computing environment, a method performed on at least one processor comprising:
-
running, by a dynamic query engine, one or more queries on a server to collect monitoring data from one or more data sources associated with the server, the monitoring data including at least one of event data, trace data, log data, performance data, provider data, instrumentation data, network data, or network traffic data via one or more input adapters; monitoring, by the dynamic query engine, resource usage of the dynamic query engine with respect to a policy-specified resource budget during the monitoring data collection; determine that the resource usage of the dynamic query engine has reached a limit relative to the policy-specified resource budget; and filter at least some portion of the monitoring data collected from the one or more data sources in order to remain within the policy-specified resource budget as the dynamic query engine continues to collect the monitoring data. - View Dependent Claims (19, 20)
-
Specification