IP Library Granted Patent US 11,157,373
Granted Patent B2
US 11,157,373 · App. 16/672,654 · Granted Oct 26, 2021

Prioritized transfer of failure event log data

Inventors: Matthew R. Alcorn (Durham, NC); James G. McLean (Raleigh, NC); Antonio Abbondanzio (Raleigh, NC); Randall William Worzella, III (Raleigh, NC)
Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
G06F11/1471G06F11/1464G06F11/3034G06F11/3476G06F16/1734
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 11,157,373
App. No.
16/672,654
Granted
Oct 26, 2021
Kind
B2
Abstract

Apparatus and computer program product including program instructions configured to cause a processor to perform operations. The operations may include detecting a system failure in a host node, wherein the host node locally stores log files during operation of the host node. The operations may further include receiving a request for failure event log data stored by the host node, and identifying an amount of available storage capacity of a designated remote data storage device, prioritizing data from the log files to be included in the failure event log data, and selecting a subset of the failure event log data in order of descending priority until the total amount of the selected data would substantially fill the remote data storage device. Still further, the operations may include transferring, in response to receiving the request, the selected subset of the data to the designated remote data storage device.

Claims (42)

1. A computer program product comprising a non-volatile computer readable medium and non-transitory program instructions embodied therein, the program instructions being configured to be executable by a processor to cause the processor to perform operations comprising:

detecting an occurrence of a system failure in a host node that includes the processor, wherein the host node locally stores a plurality of log files during operation of the host node;

receiving a request for failure event log data stored by the host node;

identifying an amount of available storage capacity of a remote data storage device that has been designated to receive failure event log data from the host node, wherein the remote data storage device is accessible to the host node;

prioritizing data from the plurality of log files to be included in the failure event log data;

selecting a subset of the data in order of descending priority for inclusion in the failure event log data until the total amount of the selected data would substantially fill the available storage capacity of the remote data storage device; and

transferring, in response to receiving the request, the selected subset of the data from the plurality of log files to the designated remote data storage device.

2. The computer program product of claim 1 , wherein the data from the plurality of log files is prioritized by a data type of each data entry in the plurality of log files, wherein the data type is identified by a tag stored for each data entry.

3. The computer program product of claim 2 , wherein the data type indicates a level of severity.

4. The computer program product of claim 1 , wherein the data from the plurality of log files is prioritized by a log type or log name.

5. The computer program product of claim 1 , wherein the data from the plurality of log files is prioritized by a proximity in time prior to the detected occurrence of the system failure.

6. The computer program product of claim 1 , wherein the data from the plurality of log files is prioritized in ascending order of a size of the log file.

7. The computer program product of claim 1 , wherein the data from the plurality of log files is prioritized by a predetermined manual ranking of log files or data types.

8. The computer program product of claim 1 , the program instructions being configured to be executable by a processor to cause the processor to perform operations further comprising: accessing a list identifying a plurality of previously detected system failures and, for each previous system failure, a log file or log file type that includes data associated with the previous system failure, wherein the data from the log file or log type identified in the list is included in the selected subset of the data.

9. The computer program product of claim 1 , the program instructions being configured to be executable by a processor to cause the processor to perform operations further comprising:

identifying a component of the host node that experienced the system failure; and

identifying a log file associated with the identified component, wherein the log file associated with the identified component is included in the selected subset of the data.

10. The computer program product of claim 1 , wherein the designated data storage device is a removable flash drive coupled to an externally accessible port of the host node.

11. The computer program product of claim 1 , wherein the designated data storage device is network attached storage, wherein the amount of available storage capacity is a manually configured amount for receiving failure event log data in response to each detected system failure.

12. The computer program product of claim 1 , wherein data in a given log file among the plurality of log files includes data segments with different priority.

13. The computer program product of claim 12 , the program instructions being configured to be executable by a processor to cause the processor to perform operations further comprising:

identifying a filename of each log file on the host node that includes any data segment of the selected subset of data, wherein, for each data segment of the selected subset of data, the data segment is stored on the data storage device in a file having the same filename as the log file on the host node from which the data segment was collected.

14. The computer program product of claim 12 , the program instructions being configured to be executable by a processor to cause the processor to perform operations further comprising:

identifying the data segments so that the data segments that are included in the given log file can be concatenated for storage on the data storage device.

15. An apparatus, comprising:

at least one non-volatile storage device storing program instructions; and

at least one processor configured to process the program instructions,

wherein the program instructions are configured to, when processed by the at least one processor, cause the apparatus to perform operations comprising:

detecting an occurrence of a system failure in a host node that includes the processor, wherein the host node locally stores a plurality of log files during operation of the host node;

receiving a request for failure event log data stored by the host node;

identifying an amount of available storage capacity of a remote data storage device that has been designated to receive failure event log data from the host node, wherein the remote data storage device is accessible to the host node;

prioritizing data from the plurality of log files to be included in the failure event log data;

selecting a subset of the data in order of descending priority for inclusion in the failure event log data until the total amount of the selected data would substantially fill the available storage capacity of the remote data storage device; and

transferring, in response to receiving the request, the selected subset of the data from the plurality of log files to the designated remote data storage device.

16. A computer program product comprising a non-volatile computer readable medium and non-transitory program instructions embodied therein, the program instructions being configured to be executable by a processor to cause the processor to perform operations comprising:

receiving a request for failure event log data stored by a host node that includes the processor, wherein the host node locally stores a plurality of log files during operation of the host node;

prioritizing data from the plurality of log files to be included in the failure event log data; and

transferring, in response to receiving the request, the data in order of descending priority until the plurality of log files have been transferred or until the data can no longer be transferred.

17. The computer program product of claim 16 , wherein transferring the data comprises transferring the data in order of descending priority until a power outage, a network disruption, and/or storage capacity of a receiving node is depleted.

18. The computer program product of claim 16 , wherein receiving the request for failure event log data comprises receiving the request via a web interface, a command interface, and/or a remote command interface.

19. The computer program product of claim 16 , wherein transferring the data comprises transferring the data via a USB port of the host node and/or over a network connection.

20. The computer program product of claim 16 , wherein the data from the plurality of log files is prioritized by a data type of each data entry in the plurality of log files, wherein the data type is identified by a tag stored for each data entry.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LIMITED
To: LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069869/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2022
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 060490/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2019
From: ALCORN, MATTHEW R.; MCLEAN, JAMES G.; ABBONDANZIO, ANTONIO; WORZELLA, RANDALL WILLIAM
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 050901/0802 →
Continuity (1)
Related Publication 20210133054A1 · May 6, 2021
Cited By (2)
US 12,585,526 US 12,602,276