Service guru system and method for automated proactive and reactive computer system analysis
First Claim
1. A method for troubleshooting a computer system, comprising:
- receiving, at a location remote to the computer system, a request for problem analysis for the computer system in response to an occurrence of a problem;
receiving data corresponding to the computer system comprising a core file from the computer system and supplemental configuration information;
accessing a knowledge store storing phases, wherein each phase includes a set of scripts adapted to identify previously identified computer problems;
performing a phased analysis of the computer system data comprising completing at least two of the phases from the knowledge store; and
generating an output report including a list of the computer problems identified during the performing;
wherein each of the phases includes an optimization mechanism operable such that the phases executed in the performing is less than the set of the phases, wherein the optimization mechanism functions to check a list of static preconditions and to compare the static preconditions to the received computer system data; and
wherein the static preconditions include variables selected from the group consisting of operating system identifications, operating system releases, software packages, software packages releases, system architectures, platforms, catch levels, and panic strings.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer method for automatically troubleshooting and preventing problems on a computer system. The method includes receiving data corresponding to the computer system including core files, supplemental configuration information, and other data. The method continues with processing the computer system data into a format useful for rapid analysis. The method uses a knowledge repository of phases and scripts. Each phase is a logical organization of scripts. Each script is an executable for identifying both the conditions that can lead to a problem as well as determining an actual instance of a problem. Execution of the method includes execution of the phases contained in the repository. Several optimizations are used to eliminate large quantities of scripts in order to improve run time. Phases produce intermediate results that can be used by subsequent phases to reduce complexity. A report is generated listing problems for the computer system with corrective actions.
71 Citations
19 Claims
-
1. A method for troubleshooting a computer system, comprising:
-
receiving, at a location remote to the computer system, a request for problem analysis for the computer system in response to an occurrence of a problem;
receiving data corresponding to the computer system comprising a core file from the computer system and supplemental configuration information;
accessing a knowledge store storing phases, wherein each phase includes a set of scripts adapted to identify previously identified computer problems;
performing a phased analysis of the computer system data comprising completing at least two of the phases from the knowledge store; and
generating an output report including a list of the computer problems identified during the performing;
wherein each of the phases includes an optimization mechanism operable such that the phases executed in the performing is less than the set of the phases, wherein the optimization mechanism functions to check a list of static preconditions and to compare the static preconditions to the received computer system data; and
wherein the static preconditions include variables selected from the group consisting of operating system identifications, operating system releases, software packages, software packages releases, system architectures, platforms, catch levels, and panic strings. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for reactively troubleshooting and proactively controlling problems on a computer system, comprising:
-
collecting data corresponding to the computer system;
accessing a knowledge store of previously identified computer system problems;
parsing the collected data into a context-free, language-independent format;
building a list of analysis phases to run on the collected data;
running each phase in the list using the collected data; and
generating an analysis report based on output data from at least some of the analysis phases run;
wherein each phase comprises a plurality of scripts and wherein the running of each phase includes first performing a static precondition check for the phase to determine if a subset of the scripts applies to the computer system to improve run times by reducing the scripts executed during running. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for troubleshooting a computer system, comprising:
-
receiving, at a location remote to the computer system, a request for problem analysis for the computer system in response to an occurrence of a problem;
receiving data corresponding to the computer system comprising a core file from the computer system and supplemental configuration information;
accessing a knowledge store storing phases, wherein each phase includes a set of scripts adapted to identify previously identified computer problems;
performing a phased analysis of the computer system data comprising completing at least two of the phases from the knowledge store; and
generating an output report including a list of the computer problems identified during the performing;
wherein the phased analysis performing comprises a sequential analysis using the analysis phases to process a memory image from the computer system to create at least one corrective action for inclusion in the output report; and
wherein the analysis phases are selected from the group consisting of a hardware error scan, a bug analysis, a user core file analysis, a kernel core file analysis, a parse of the computer system data into context free format, a check for bad patches, a check for software configuration and version, a check for hardware configuration and version, a software error scan, an infodoc check, a faq check, an srdb check, an stb/white paper check, retrieval of down revision patches, a security issue check, a system health check, a storage-related check, a platform analysis, a performance-analysis, a kernel configuration check, and third party checks.
-
-
16. An apparatus for troubleshooting a computer system, comprising:
-
means for receiving a request for problem analysis for the computer system in response to an occurrence of a problem;
means for receiving data corresponding to the computer system comprising a core file from the computer system and supplemental configuration information;
means for accessing a knowledge store storing phases, wherein each phase includes a set of scripts adapted to identify previously identified computer problems; and
means for performing a phased analysis of the computer system data comprising completing at least two of the phases from the knowledge store;
wherein each of the phases includes an optimization mechanism operable such that the phases executed in the performing is less than the set of the phases, wherein the optimization mechanism functions to check a list of static preconditions and to compare the static preconditions to the received computer system data; and
wherein the static preconditions include variables selected from the group consisting of operating system identifications, operating system releases, software packages, software packages releases, system architectures, platforms, patch levels, and panic strings.
-
-
17. A method for reactively troubleshooting and proactively controlling problems on a computer system, comprising:
-
receiving data corresponding to the computer system;
receiving previously identified computer system problems;
building a list of analysis phases to run on the collected data; and
running each phase in the list using the collected data;
wherein each phase comprises a plurality of scripts and wherein the running of each phase includes first performing a static precondition check for the phase to determine if a subset of the scripts applies to the computer system to improve run times by reducing the scripts executed during running. - View Dependent Claims (18)
-
-
19. An apparatus for reactively troubleshooting and proactively controlling problems on a computer system, comprising:
-
means for receiving data corresponding to the computer system;
means for receiving previously identified computer system problems;
means for building a list of analysis phases to run on the collected data; and
means for running each phase in the list using the collected data;
wherein each phase comprises a plurality of scripts and wherein the running of each phase includes first performing a static precondition check for the phase to determine if a subset of the scripts applies to the computer system to improve run times by reducing the scripts executed during running.
-
Specification