1. A system comprising: at least one processor; a non-transitory computer-readable medium storing instructions, that when executed by the at least one processor, are configured to implement: a troubleshooting activity recorder configured to record troubleshooting sessions for troubleshooting issues within a network system, each troubleshooting session including a sequence of queries and results from searching on a data store that stores log entries for events occurring within the network system and configuration data of components of the network system, wherein the troubleshooting activity recorder includes a query transformer configured to transform the queries and the results into transformed queries and transformed results, wherein the transformed queries and the transformed results have a structured format that is searchable; a graph builder configured to automatically learn troubleshooting patterns based on the recorded troubleshooting sessions, the graph builder configured to automatically generate a troubleshooting pattern graph using the transformed queries and the transformed results, wherein the graph builder is configured to automatically generate the troubleshooting pattern graph by creating a plurality of query nodes that represent the transformed queries, creating links between the nodes of the plurality of query nodes, and annotating the links using the transformed results; a search engine configured to search the data store in response to a first query of a current troubleshooting session, and return a first result in response to the first query; and a query suggestor configured to select one of the nodes of the plurality of query nodes in the troubleshooting pattern graph as a recommendation for a second query to be performed in the current troubleshooting session by searching and analyzing the plurality of query nodes and the annotated links in the troubleshooting pattern graph using the first query and the first result.