Replication management system with enhanced log analysis functionality
Various embodiments for a replication assistant and log analyzer system are described herein. An embodiment operates by receiving a selection of a plurality of log files generated by an application. A query is received on the plurality of log files, the query comprising one or more terms. The plurality of log files are searched for the one or more terms corresponding to the query. A result of the searching is generated for display, the result comprising: a first indicator as to which of the plurality of log entries of which of the plurality of log files include the one or more terms, and a second indicator as to which of the different components of the application each of the log entries correspond. The result including is displayed, wherein the log entries are sorted by the timestamp of the log entries across the plurality of log files.
1 . A method, comprising:
receiving a selection of a plurality of log files generated by a data replication application configured to perform data replication between a source system and a target system, wherein the source system is paused during the data replication, each log file was generated by a different component of the data replication application during the data replication, and each log file comprising a plurality of log entries and a corresponding timestamp for each of the plurality of log entries;
retrieving data from each of the plurality of log files;
storing the data from each of the plurality of log files in a database;
performing an initial scan of the plurality of log files in the database, prior to receiving a query on the plurality of log files, wherein the initial scan identifies a set of one or more errors included in the plurality of log files;
displaying, on a user interface, a visual indication of the set of one or more errors included in the plurality of log files;
receiving, via the user interface, the query on the plurality of log files, the query comprising one or more terms and a selection of one or more errors from the set of one or more errors corresponding to the visual indication;
searching the plurality of log files for the one or more terms corresponding to the query, wherein the searching identifies a result subset of the plurality of log entries comprising the one or more terms corresponding to the query;
in response to the searching, generating a JavaScript Object Notation (JSON) file for a corresponding log entry of the result subset, wherein the JSON file comprises JSON text extracted from the corresponding log entry;
generating, for display on the user interface, a result of the searching, the result comprising:
a first indicator as to which of the plurality of log entries of which of the plurality of log files are the result subset;
a second indicator as to which of the different components of the data replication application each of the log entries correspond; and
a third indicator as to which log entry of the result subset is the corresponding log entry;
displaying the result including the first indicator, the second indicator, the third indicator, and the result subset, wherein the result subset is sorted by the timestamp of the result subset across the plurality of log files;
receiving, via the user interface, input selecting the third indicator of the corresponding log entry; and
in response to receiving the input selecting the third indicator, displaying the JSON text in the JSON file on the user interface.
2 . The method of claim 1 , wherein the first indicator comprises a value of the one or more terms.
3 . The method of claim 1 , wherein the log entries are color coded to a corresponding one of the plurality of log files.
4 . The method of claim 1 , wherein the first indicator includes no value for at least a subset of the plurality of log entries displayed on the user interface.
5 . The method of claim 1 , where the displaying comprises both an indication of one or more log files that were selected and from which the data was retrieved, and an indication as to one or more log files that were not selected and from which data was not retrieved.
6 . The method of claim 1 , wherein the visual indication comprises a drop-down list of the one or more errors, and the selection of the one or more errors are selected from the drop-down list.
7 . The method of claim 1 , wherein the visual indication provides the set of one or more errors included in the plurality of log files, and a set of errors which were detected and not included.
8 . A system comprising at least one processor, the at least one processor configured to perform operations comprising:
receiving a selection of a plurality of log files generated by a data replication application configured to perform data replication between a source system and a target system, wherein the source system is paused during the data replication, each log file was generated by a different component of the data replication application during the data replication, and each log file comprising a plurality of log entries and a corresponding timestamp for each of the plurality of log entries;
retrieving data from each of the plurality of log files;
storing the data from each of the plurality of log files in a database;
performing an initial scan of the plurality of log files in the database, prior to receiving a query on the plurality of log files, wherein the initial scan identifies a set of one or more errors included in the plurality of log files;
displaying, on a user interface, a visual indication of the set of one or more errors included in the plurality of log files;
receiving, via the user interface, the query on the plurality of log files, the query comprising one or more terms and a selection of one or more errors from the set of one or more errors corresponding to the visual indication;
searching the plurality of log files for the one or more terms corresponding to the query, wherein the searching identifies a result subset of the plurality of log entries comprising the one or more terms corresponding to the query;
in response to the searching, generating a JavaScript Object Notation (JSON) file for a corresponding log entry of the result subset, wherein the JSON file comprises JSON text extracted from the corresponding log entry;
generating, for display on the user interface, a result of the searching, the result comprising:
a first indicator as to which of the plurality of log entries of which of the plurality of log files are the result subset;
a second indicator as to which of the different components of the data replication application each of the log entries correspond; and
a third indicator as to which log entry of the result subset is the corresponding log entry;
displaying the result including the first indicator, the second indicator, the third indicator, and the result subset, wherein the result subset is sorted by the timestamp of the result subset across the plurality of log files;
receiving, via the user interface, input selecting the third indicator of the corresponding log entry; and
in response to receiving the input selecting the third indicator, displaying the JSON text in the JSON file on the user interface.
9 . The system of claim 8 , wherein the first indicator comprises a value of the one or more terms.
10 . The system of claim 8 , wherein the log entries are color coded to a corresponding one of the plurality of log files.
11 . The system of claim 8 , wherein the first indicator includes no value for at least a subset of the plurality of log entries displayed on the user interface.
12 . The system of claim 8 , where the displaying comprises both an indication of one or more log files that were selected and from which the data was retrieved, and an indication as to one or more log files that were not selected and from which data was not retrieved.
13 . A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:
receiving a selection of a plurality of log files generated by a data replication application configured to perform data replication between a source system and a target system, wherein the source system is paused during the data replication, each log file was generated by a different component of the data replication application during the data replication, and each log file comprising a plurality of log entries and a corresponding timestamp for each of the plurality of log entries;
retrieving data from each of the plurality of log files;
storing the data from each of the plurality of log files in a database;
performing an initial scan of the plurality of log files in the database, prior to receiving a query on the plurality of log files, wherein the initial scan identifies a set of one or more errors included in the plurality of log files;
displaying, on a user interface, a visual indication of the set of one or more errors included in the plurality of log files;
receiving, via the user interface, the query on the plurality of log files, the query comprising one or more terms and a selection of one or more errors from the set of one or more errors corresponding to the visual indication;
searching the plurality of log files for the one or more terms corresponding to the query, wherein the searching identifies a result subset of the plurality of log entries comprising the one or more terms corresponding to the query;
in response to the searching, generating a JavaScript Object Notation (JSON) file for a corresponding log entry of the result subset, wherein the JSON file comprises JSON text extracted from the corresponding log entry;
generating, for display on the user interface, a result of the searching, the result comprising:
a first indicator as to which of the plurality of log entries of which of the plurality of log files are the result subset;
a second indicator as to which of the different components of the data replication application each of the log entries correspond; and
a third indicator as to which log entry of the result subset is the corresponding log entry;
displaying the result including the first indicator, the second indicator, the third indicator, and the result subset, wherein the result subset is sorted by the timestamp of the result subset across the plurality of log files;
receiving, via the user interface, input selecting the third indicator of the corresponding log entry; and
in response to receiving the input selecting the third indicator, displaying the JSON text in the JSON file on the user interface.
14 . The non-transitory computer-readable medium of claim 13 , wherein the log entries are color coded to a corresponding one of the plurality of log files.