A computer-readable storage medium having instructions stored therein, which when executed by a computer, cause the computer to perform operations, the operations comprising:
- receiving a user request to diagnose an application, the user request having information describing a symptom of a behavior of an application;
- in response to the user request, identifying one or more components that provide services to the application;
- for each of the components,
- identifying a log file that logs events occurred during operations of the corresponding component, and
- parsing the log file in view of the user request to identify one or more events associated with the symptom of the behavior, comprising classifying the events logged in the log file based on at least one of:
- a time stamp, a category, a component, or a log message;
- analyzing the events associated with the symptom of the behavior to identify a potential problem;
- accessing a knowledgebase (KB) corresponding to the component to determine a potential solution to the problem, wherein the KB is hosted at a KB server where operations associated with ordering and sorting of articles stored in the KB are parallelized.