Cyclic Buffer Event Management for Application Logging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for managing computer application errors require significant storage resources due to continuous logging of application activity data, which is often not analyzed until an error occurs, leading to inefficient use of processor and storage resources.
Innovation Solution
Implementing a cyclic buffer to store recent application activity data, which is overwritten regularly, and writing its contents to a log file only upon detection of an error, thereby reducing storage needs and focusing data retention on relevant error-related information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If continuous logging of application activity data is implemented, then complete troubleshooting information is available, but storage resources and processor resources are significantly consumed
Solution Approach 1:
The patent extracts only the most recent application activity data from the continuous log stream and stores it separately in a circular buffer. This extraction allows the system to retain complete troubleshooting information for recent operations without storing the entire historical log, thereby reducing overall storage requirements while maintaining access to critical recent data for error analysis.
Solution Approach 2:
The system performs preliminary action by pre-storing recent application activity data in the circular buffer before an error occurs. This preliminary storage ensures that when an error happens, the troubleshooting information is already available in an easily accessible format, eliminating the need to process and filter through extensive log files at the moment of error detection.
2Loss of information
If continuous logging of application activity data is implemented, then complete troubleshooting information is available, but processor resources are significantly consumed
Solution Approach 1:
The patent extracts only the most recent application activity data from the continuous log stream and stores it separately in a circular buffer. This extraction allows the system to retain complete troubleshooting information for recent operations without storing the entire historical log, thereby reducing overall storage requirements while maintaining access to critical recent data for error analysis.
Solution Approach 2:
The system performs preliminary action by pre-storing recent application activity data in the circular buffer before an error occurs. This preliminary storage ensures that when an error happens, the troubleshooting information is already available in an easily accessible format, eliminating the need to process and filter through extensive log files at the moment of error detection.
3Loss of information
If significant amounts of data are stored to persistent storage, then complete application status information is retained, but storage space is excessively used
Solution Approach 1:
The patent segments the log data into two distinct parts: (1) a continuous full log stored in persistent storage for historical record-keeping, and (2) recent application activity data stored in a circular buffer in memory for quick access. This segmentation allows the system to maintain complete application status information across both storage locations while optimizing space usage by keeping only essential recent data in the higher-cost memory storage.
Solution Approach 2:
The system performs preliminary action by pre-storing recent application activity data in the circular buffer before an error occurs. This preliminary storage ensures that when an error happens, the troubleshooting information is already available in an easily accessible format, eliminating the need to process and filter through extensive log files at the moment of error detection.
Data Source
AI summary
Example event management systems and methods are described. In one implementation, a method monitors an application implemented using one or more processors. The method identifies activity data associated with operation of the application. The activity data is stored in a cyclic buffer. Upon detection of an error event associated with the operation of the application, the activity data in the cyclic buffer is written to a log file.


