IP Library Granted Patent US 12,645,521
Granted Patent B2
US 12,645,521 · App. 18/198,907 · Granted Jun 2, 2026

Replication management system with enhanced log analysis functionality

Inventor: Xuemin Ding (Shanghai, CN)
Assignee: SAP SE
G06F11/0775G06F11/362G06F16/2379G06F16/2455G06F16/248
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,645,521
App. No.
18/198,907
Filed
May 18, 2023
Granted
Jun 2, 2026
Kind
B2
Art Unit
2164
USPC
707/648
Abstract

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.

Claims (59)

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.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2023
From: DING, XUEMIN
To: SAP SE
Reel/Frame 063699/0373 →
Continuity (1)
Related Publication 20240385922A1 · Nov 21, 2024
References Cited (21)
US 7343626B1 · Gallagher · 2008 [cited by examiner]
US 10581886B1 · Sharifi Mehr · 2020 [cited by examiner]
US 10762049B1 · Liang · 2020 [cited by examiner]
US 11113301B1 · Modestino · 2021 [cited by examiner]
US 20070185939A1 · Prahland · 2007 [cited by examiner]
US 20160275101A1 · Hinterbichler · 2016 [cited by examiner]
US 20170178026A1 · Thomas et al. · 2017 [cited by applicant]
US 20180129497A1 · Biddle · 2018 [cited by examiner]
US 20180189339A1 · Ananthakrishnan · 2018 [cited by examiner]
US 20190205197A1 · Hartman · 2019 [cited by examiner]
US 20200201300A1 · Baba · 2020 [cited by examiner]
US 20220121628A1 · Devaraj · 2022 [cited by examiner]
US 20230072123A1 · Sethu · 2023 [cited by examiner]
US 20230088164A1 · Varada · 2023 [cited by examiner]
US 20230385267A1 · Russell · 2023 [cited by examiner]
US 20240242031A1 · Arrigoni · 2024 [cited by examiner]
CN 103544298A · 2014 [cited by applicant]
CN 107330034A · 2017 [cited by applicant]
CN 108416054A · 2018 [cited by applicant]
“Amazon CloudWatch Logs User Guide,” Amazon Web Services, 2022, pp. 1-239. [cited by applicant]
“Filtering Logs and Traces,” Dec. 7, 2022, 6 pages. [cited by applicant]