In-Memory Logging Framework for Runtime Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Complex software systems require rigorous runtime behavior management, but excessive logging for detailed analysis consumes large amounts of memory, leading to storage inefficiencies and increased costs.
Innovation Solution
A logging framework with an API that dynamically decides what information to log during runtime, reserving space in-memory, writing logs based on operation results, and persisting only relevant data, thereby reducing memory usage and storage needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If comprehensive logging of all decisions, states, inputs, and outputs is implemented, then analysis capability is improved, but memory consumption increases
Solution Approach 1:
The patent applies local quality by making logging behavior context-dependent rather than uniform. Different logging levels (error, warning, info, debug) are applied to different parts of the system based on their importance. Critical operations and error-prone areas log at higher detail levels, while routine operations use minimal logging, optimizing the balance between information completeness and memory efficiency.
Solution Approach 2:
The patent implements partial action by selectively logging only the necessary portion of system operations. Instead of logging everything uniformly, the system logs only relevant events based on configured criteria, operational context, and importance thresholds. This partial logging approach captures sufficient information for analysis while avoiding the memory overhead of comprehensive logging.
2Reliability
If detailed logging is enabled for runtime analysis, then understanding of system behavior is improved, but storage requirements increase
Solution Approach 1:
The patent segments log data into different categories and priority levels (errors, warnings, information, debug). Each segment is handled differently in terms of retention policy and storage allocation. Critical error logs are retained with high detail, while routine information logs are summarized or retained at lower detail levels, reducing overall storage requirements while maintaining system understanding capability.
Solution Approach 2:
The patent dynamically adjusts logging parameters such as log level, detail depth, and retention period based on system state, operational phase, and configured policies. During critical operations or error conditions, logging detail increases automatically. During normal operations, logging detail decreases. This parameter adaptation allows the system to maintain reliability for analysis while optimizing storage utilization.
Data Source
AI summary
In some embodiments, a logging framework reserves space in an in-memory storage for a log entry upon receiving a first function call from an application being executed. Upon receiving a second function call from the application being executed, the framework writes the log entry in the space in the in-memory storage. Upon receiving a third function call from the application being executed, the framework selects a configuration for the application and comparing an indicator that is generated based on the executing of the application to the configuration. When the indicator meets a condition of the configuration, the framework copies the log entry from the space in the in-memory storage to a persistent storage space. The log entry is deleted from the space in the in-memory storage at a time after performing the comparing.


