US 11,782,880 B2
Synchronizing log data within a cluster
Deepak Ghuge, Sangamner (IN); Chetan R Kulkarni, Pune (IN); and Sandeep R. Patil, Pune (IN)
Assigned to International Business Machines Corporation, Armonk, NY (US)
Filed by International Business Machines Corporation, Armonk, NY (US)
Filed on Jan. 4, 2019, as Appl. No. 16/239,793.
Prior Publication US 2020/0218697 A1, Jul. 9, 2020
Int. Cl. G06F 16/178 (2019.01); G06F 16/13 (2019.01); G06F 16/17 (2019.01)
CPC G06F 16/178 (2019.01) [G06F 16/13 (2019.01); G06F 16/1734 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method, comprising:
compiling log data from a plurality of nodes of a cluster;
retrieving a timestamp table stored within the cluster, the timestamp table including synchronized timestamps from the plurality of nodes;
selecting a reference node from the plurality of nodes;
creating a time difference table that includes differences between timestamps for the reference node and timestamps for each of the plurality of nodes other than the reference node;
creating an optimized timestamp table, utilizing the timestamp table and the time difference table;
adjusting the log data from the plurality of nodes, utilizing the optimized timestamp table; and
storing the adjusted log data in a hardware memory,
wherein the log data includes all log data associated with all protocol servers running on the plurality of the nodes,
wherein the timestamp table is retrieved from a node of the cluster that receives the log data from each node of the plurality of nodes,
wherein, in response to determining that a subset of the nodes in the plurality of nodes share a lowest time and data value for a predetermined timestamp instance within the timestamp table, one of the subset of nodes is randomly selected as the reference node,
wherein the log data is compiled in response to a request, the request including a predetermined flag,
wherein adjusting the log data from the plurality of nodes includes, for each node of the plurality of nodes, correcting timestamps within log files that occur after a first timestamp instance and before a second timestamp instance within the time difference table according to a value corresponding to the node at the first timestamp instance within the time difference table.