Event-Based Diagnostic Daemon Plugin Architecture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Detecting failures in high availability computing devices is inefficient, as existing methods collect and analyze diagnostic information at a later point in time, making it difficult to improve performance and handle errors effectively.
Innovation Solution
A diagnostic daemon with a plugin layer is implemented to automatically collect relevant and contextual diagnostic information at the time of an error, using a plugin layer that receives events from components, routes them to appropriate plugins, and executes operations to gather specified diagnostic data, enhancing the availability of computing devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If diagnostic information is collected and analyzed at a later point in time, then storage and analysis simplicity is improved, but detection timeliness and error diagnosis effectiveness deteriorates
Solution Approach 1:
The patent implements preliminary action by collecting and storing diagnostic information at the time of the error event itself, rather than attempting to retrieve it later. The error information collector captures contextual data (register states, memory contents, instruction streams) immediately when an exception occurs, preserving the original error context before system state changes. This preliminary collection eliminates the time loss associated with later analysis while maintaining storage simplicity through structured data capture.
2Measurement precision
If a plugin layer is implemented to route events to appropriate plugins, then diagnostic information collection accuracy is improved, but system complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the diagnostic information collection system into modular error information collector components, each specialized for specific error types or system components. The plugin layer segments the collection responsibilities, routing different error events to appropriate specialized collectors. This segmentation improves measurement precision by matching error types with specialized collection strategies while managing complexity through clear modular boundaries and standardized interfaces.
Solution Approach 2:
The error information collector acts as an intermediary layer between the system components and the diagnostic analysis process. It receives error events from various system components, standardizes the information format, and prepares it for analysis. This intermediary role improves collection accuracy by ensuring consistent data capture while simplifying the overall system architecture by providing a single point of integration rather than direct connections between all components and analyzers.
3Reliability
If real-time diagnostic information collection is implemented, then error diagnosis effectiveness is improved, but resource consumption increases
Solution Approach 1:
The patent implements partial action by collecting only the specific diagnostic information necessary for error diagnosis rather than continuously monitoring all system parameters. The error information collector captures relevant data (register states, memory contents, instruction streams) selectively triggered by error events, avoiding the continuous resource consumption of full system monitoring. This approach maintains high error diagnosis effectiveness while reducing overall resource usage by acting only when needed.
Solution Approach 2:
The system dynamically changes operational parameters based on error conditions. During normal operation, resource consumption is minimized with selective error-triggered collection. When an error occurs, the system transitions to a high-collection mode, capturing detailed diagnostic information including register states, memory contents, and instruction streams. This parameter change approach ensures high error diagnosis effectiveness when needed while maintaining low resource consumption during normal operation.
Data Source
AI summary
An example computing device includes a processor and a memory coupled to the processor. The memory may include a diagnostic daemon executing in a user space. The diagnostic daemon may include a plugin layer and a plurality of plugins communicatively connected to the plugin layer. Each plugin may perform at least one operation related to diagnostic data collection. The plugin layer may receive an event from a component running in the computing device upon the component encountering an error. The event may include a plugin identifier and an operation identifier. Further, the plugin layer may route the event to a plugin of the plurality of plugins based on the plugin identifier. Furthermore, the plugin may determine an operation to be performed corresponding to the component based on the operation identifier and execute the operation to collect a type of diagnostic information specified for the component.


