Validating configuration of distributed applications
First Claim
1. At a computer system including one or more processors and system memory, the computer system also including a one or more configuration readers, and a rule store, the rule store containing a plurality of configuration validation rules, each of the one or more configuration readers configured to read configuration data for one or more configuration validation rules from among the plurality of configuration validation rules, a rule engine configured to apply configuration validation rules against configuration data, a method for attempting to validate the configuration of an application, the method comprising:
- an act of accessing a configuration validation rule from the rule store, the configuration validation rule configured to execute against configuration data to validate an at least partial configuration of the application, the configuration validation rule containing rule metadata, detection logic, and resolution logic, the rule metadata identifying at least one configuration reader, from among the one or more configuration readers, the configuration validation rule is to read configuration data from, the detection logic indicating how to detect one or more conditions in configuration data accessed from the identified configuration reader, the resolution logic representing one or more possible resolutions to the one or more detectable conditions;
an act of matching the accessed configuration validation rule to the at least one identified configuration reader based on the at least one configuration reader being identified in the rule metadata;
an act of accessing a portion of configuration data from the at least one identified configuration reader;
an act of attempting to validate the at least partial configuration of the application by executing the detection logic against the accessed portion of configuration data, execution of the detection logic including attempting to detect any of the one or more conditions the detection logic;
an act of detecting a condition, from among the one or more conditions, in the accessed portion of configuration data;
an act of presenting at least the detected condition at a user interface; and
an act of applying a resolution, from among a presented one or more possible resolutions for the detected condition, based on a resolution policy.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for validation configuration of distributed applications. Embodiments of the invention provide a system framework for identifying root causes of configuration errors and best-practice incompliance of distributed applications. The system framework provides both platform provider and customer a powerful and consistent method to create, extend, and utilize a tool that simplifies the configuration troubleshooting experience. Using the system framework, a user is able to access more information about applications and to troubleshoot multiple applications at the same time without having to load or activate any of the applications. In addition, users are able to add custom rules to identify commonly occurring configuration problems.
-
Citations
18 Claims
-
1. At a computer system including one or more processors and system memory, the computer system also including a one or more configuration readers, and a rule store, the rule store containing a plurality of configuration validation rules, each of the one or more configuration readers configured to read configuration data for one or more configuration validation rules from among the plurality of configuration validation rules, a rule engine configured to apply configuration validation rules against configuration data, a method for attempting to validate the configuration of an application, the method comprising:
-
an act of accessing a configuration validation rule from the rule store, the configuration validation rule configured to execute against configuration data to validate an at least partial configuration of the application, the configuration validation rule containing rule metadata, detection logic, and resolution logic, the rule metadata identifying at least one configuration reader, from among the one or more configuration readers, the configuration validation rule is to read configuration data from, the detection logic indicating how to detect one or more conditions in configuration data accessed from the identified configuration reader, the resolution logic representing one or more possible resolutions to the one or more detectable conditions; an act of matching the accessed configuration validation rule to the at least one identified configuration reader based on the at least one configuration reader being identified in the rule metadata; an act of accessing a portion of configuration data from the at least one identified configuration reader; an act of attempting to validate the at least partial configuration of the application by executing the detection logic against the accessed portion of configuration data, execution of the detection logic including attempting to detect any of the one or more conditions the detection logic; an act of detecting a condition, from among the one or more conditions, in the accessed portion of configuration data; an act of presenting at least the detected condition at a user interface; and an act of applying a resolution, from among a presented one or more possible resolutions for the detected condition, based on a resolution policy. - View Dependent Claims (2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13)
-
-
6. The method as recited in 1 claim, further comprising prior to accessing a configuration validation rule from the rule store, an act of a rule author entering the configuration validation rule through a rule Application Program Interface (“
- API”
) for storage in the rule store.
- API”
-
14. A computer program product for use at a computer system, the computer system including a one or more configuration readers, and a rule store, the rule store containing a plurality of configuration validation rules, each of the one or more configuration readers configured to read configuration data for one or more configuration validation rules from among the plurality of configuration validation rules, the rule engine configured to apply configuration validation rules against configuration data, the computer program product for implementing a method for attempting to validate the configuration of an application, the computer program product comprising one or more computer storage media having stored thereon computer executable instructions that, when executed at a processor, cause the computer system to perform the method, including the following:
-
access a configuration validation rule from the rule store, the configuration validation rule configured to execute against configuration data to validate an at least partial configuration of the application, the configuration validation rule containing rule metadata, detection logic, and resolution logic, the rule metadata identifying at least one configuration reader, from among the one or more configuration readers, the configuration validation rule is to read configuration data from, the detection logic indicating how to detect one or more conditions in configuration data accessed from the identified configuration reader, the resolution logic representing one or more possible resolutions to the one or more detectable conditions; match the accessed configuration validation rule to the at least one identified configuration reader based on the at least one configuration reader being identified in the rule metadata; access a portion of configuration data from the at least one identified configuration reader; and attempt to validate the at least partial configuration of the application by executing the detection logic against the accessed portion of configuration data, execution of the detection logic including attempting to detect any of the one or more conditions the detection logic; detect a condition, from among the one or more conditions, in the accessed portion of configuration data; present the detected condition along with one or more possible resolutions for the detected condition; and apply a resolution, from among the presented one or more possible resolutions for the detected condition, based on a resolution policy. - View Dependent Claims (15, 16, 17)
-
-
18. A system for validating the configuration of distributed applications, the system comprising one or more processors and system memory, the system also including a one or more configuration readers, and a rule store, the rule store containing a plurality of configuration validation rules, each of the one or more configuration readers configured to read configuration data for one or more configuration validation rules from among the plurality of configuration validation rules, a rule engine configured to apply configuration validation rules against configuration data, and the system comprising computer-executable instructions which, when executed, perform a method for attempting to validate the configuration of an application comprising:
-
accessing a configuration validation rule from the rule store, the configuration validation rule configured to execute against configuration data to validate an at least partial configuration of the application, the configuration validation rule containing rule metadata, detection logic, and resolution logic, the rule metadata identifying at least one configuration reader, from among the one or configuration readers, the configuration validation rule is to read configuration data from, the detection logic indicating how to detect one or more conditions in configuration data accessed from the identified configuration reader, the resolution logic representing one or more possible resolutions to the one or more detectable conditions; matching the accessed configuration validation rule to the at least one identified configuration reader based on the at least one configuration reader being identified in the rule metadata; accessing a portion of configuration data from the at least one identified configuration reader; attempting to validate the at least partial configuration of the application by executing the detection logic against the accessed portion of configuration data, execution of the detection logic including attempting to detect any of the one or more conditions the detection logic; detecting a condition, from among the one or more conditions, in the accessed portion of configuration data; presenting at least the detected condition at a user interface; and applying a resolution, from among a presented one or more possible resolutions for the detected condition, based on a resolution policy.
-
Specification