Claims
- 1. A method for diagnosing an application, comprising:
traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; and recording said traversal as a version, with subsequent traversals having a different version.
- 2. The method of claim 1, further comprising:
passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes;
- 3. The method of claim 2, further comprising:
interrupting said traversing if an analysis node is reached that requests additional information regarding the application.
- 4. The method of claim 2, further comprising:
recording said initial data set with said version.
- 5. The method of claim 3, further comprising:
recording said additional information with said version.
- 6. The method of claim 2, wherein said diagnosis nodes indicate proposed diagnoses for the application.
- 7. The method of claim 6, wherein said diagnosis nodes further indicate proposed remedies for the application.
- 8. The method of claim 2, wherein said symptom branches indicate possible symptoms of the application.
- 9. The method of claim 2, wherein said analysis nodes indicate information required to determine which symptom branches to follow during traversal.
- 10. The method of claim 9, wherein said analysis nodes further indicate additional information regarding the application, said additional information required to determine which symptom branches to follow during traversal.
- 11. The method of claim 3, further comprising:
resuming said traversing when said additional information regarding the application is received.
- 12. The method of claim 3, further comprising:
communicating with a collector agent to retrieve said additional information.
- 13. The method of claim 12, wherein said communicating comprises:
sending one or more collection descriptors to said collector agent.
- 14. The method of claim 13, wherein said collection descriptors define one or more probes to execute and data to be filtered from the probes.
- 15. The method of claim 14, wherein said probes are programs that measure performance statistics on the application.
- 16. The method of claim 3, further comprising:
traversing said decision tree again from a beginning node, and not interrupting said traversing if an analysis node is reached that requests additional information regarding the application if said additional information is stored in said database under a previous version and said additional information is still accurate.
- 17. The method of claim 3, further comprising:
traversing said decision tree again from an analysis node encountered during said traversing, said traversing said decision tree again beginning by following a different branch from said analysis node than was followed during said traversing.
- 18. The method of claim 3, further comprising:
resuming said traversal by using said traversal version if said traversing is interrupted for any reason.
- 19. An apparatus for diagnosing an application, comprising:
a database; a decision tree traverser; and a traversal recorder coupled to said decision tree traverser and to said database.
- 20. The apparatus of claim 19, further comprising:
a memory; and an initial data set to decision tree passer coupled to said memory and to said decision tree traverser.
- 21. The apparatus of claim 19, further comprising:
a traversal interrupter coupled to said decision tree traverser.
- 22. The apparatus of claim 21, further comprising:
a traversal resumer coupled to said traversal interrupter and to said decision tree traverser.
- 23. The apparatus of claim 22, further comprising:
a collector agent communicator coupled to said traversal interrupter and to said traversal resumer.
- 24. An apparatus for diagnosing an application, comprising:
means for traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; and means for recording said traversal as a version, with subsequent traversals having a different version.
- 25. The apparatus of claim 24, further comprising:
means for passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes;
- 26. The apparatus of claim 25, further comprising:
means for interrupting said traversing if an analysis node is reached that requests additional information regarding the application.
- 27. The apparatus of claim 25, further comprising:
means for recording said initial data set with said version.
- 28. The apparatus of claim 26, further comprising:
means for recording said additional information with said version.
- 29. The apparatus of claim 25, wherein said diagnosis nodes indicate proposed diagnoses for the application.
- 30. The apparatus of claim 29, wherein said diagnosis nodes further indicate proposed remedies for the application.
- 31. The apparatus of claim 25, wherein said symptom branches indicate possible symptoms of the application.
- 32. The apparatus of claim 25, wherein said analysis nodes indicate information required to determine which symptom branches to follow during traversal.
- 33. The apparatus of claim 32, wherein said analysis nodes further indicate additional information regarding the application, said additional information required to determine which symptom branches to follow during traversal.
- 34. The apparatus of claim 26, further comprising:
means for resuming said traversing when said additional information regarding the application is received.
- 35. The apparatus of claim 26, further comprising:
means for communicating with a collector agent to retrieve said additional information.
- 36. The apparatus of claim 35, wherein said communicating comprises:
means for sending one or more collection descriptors to said collector agent.
- 37. The apparatus of claim 36, wherein said collection descriptors define one or more probes to execute and data to be filtered from the probes.
- 38. The apparatus of claim 37, wherein said probes are programs that measure performance statistics on the application.
- 39. The apparatus of claim 26, further comprising:
means for traversing said decision tree again from a beginning node, and not interrupting said traversing if an analysis node is reached that requests additional information regarding the application if said additional information is stored in said database under a previous version and said additional information is still accurate.
- 40. The apparatus of claim 26, further comprising:
means for traversing said decision tree again from an analysis node encountered during said traversing, said traversing said decision tree again beginning by following a different branch from said analysis node than was followed during said traversing.
- 41. The apparatus of claim 26, further comprising:
means for resuming said traversal by using said traversal version if said traversing is interrupted for any reason.
- 42. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for diagnosing an application, comprising:
traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; and recording said traversal as a version, with subsequent traversals having a different version.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is a continuation in part of U.S. Serial No. 10/099,584 filed Mar. 14, 2002, in the name of inventors Manish Malhotra, Thierry Violleau, Christopher Atwood, Shakil Ahmed, Peter Boothby, Sridhar Chava, Agnes Jacob, Ilya Sharapov and Prashant Srinivasan, entitled, “System and Method for Remote Performance Analysis and Optimization of Computer Systems”, Docket No. SUN-P6931.
Continuation in Parts (1)
|
Number |
Date |
Country |
| Parent |
10099584 |
Mar 2002 |
US |
| Child |
10328781 |
Dec 2002 |
US |