Event-Based Diagnostic Daemon Plugin Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvestorage and analysis simplicityVSAvoiddetection timeliness
Core Design Contradiction:
Ease of manufactureVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvediagnostic information collection accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If real-time diagnostic information collection is implemented, then error diagnosis effectiveness is improved, but resource consumption increases

Engineering Contradiction:
Improveerror diagnosis effectivenessVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12019505B2Event-based diagnostic information collection
Publication Date: 2024.06.25 VMWARE INC
  • US12019505B2 patent drawing
  • US12019505B2 patent drawing
  • US12019505B2 patent drawing

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.