Rule-Based Monitoring Engine for Multi-Threaded Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing monitoring agent designs are inflexible and do not allow users with little programming knowledge to easily create new monitoring functionality in cloud infrastructure environments, and they struggle with troubleshooting multi-threaded processes due to complex logging and identification issues.

Innovation Solution

A monitoring engine with plug-ins that use simple rule-based configuration syntax to deploy functionality intuitively, and assigns unique IDs to each thread or process for easy tracing in a cloud infrastructure, facilitating multi-threaded asynchronous logging by combining IDs into a unique master identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If monitoring functionality is tightly integrated into the monitoring engine code, then the system structure is simple, but the system becomes inflexible and difficult to extend with new functionalities

Engineering Contradiction:
Improveflexibility of monitoring functionalityVSAvoidsystem structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent divides the monitoring system into separate components: the monitoring engine and pluggable monitoring agents. Each agent can be independently configured and deployed, allowing new monitoring functionalities to be added without modifying the core engine code. This segmentation enables flexibility while maintaining a simple core structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The monitoring engine is designed with a universal architecture that can accommodate multiple types of monitoring agents through a standardized interface. The engine can dynamically load and execute different agent types (process monitoring, file monitoring, network monitoring, etc.) without requiring separate engine instances, thus providing versatility without proportional increases in structural complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If multiple threads are used for multitasking in cloud infrastructure, then processing capability and parallel execution are improved, but logging and tracing becomes complex and difficult to troubleshoot

Engineering Contradiction:
Improveparallel execution capabilityVSAvoidlogging and tracing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a centralized logging mechanism that acts as an intermediary between multiple threads and the log file. Each thread's logs are routed through this centralized system which automatically incorporates thread identification information, eliminating the need for manual thread tracking and simplifying troubleshooting while maintaining parallel execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses distinct identification markers (analogous to color coding) for different threads and processes in the log output. Each thread is assigned a unique identifier that appears in its log entries, making it easy to visually distinguish and trace specific thread activities through the log file, thereby simplifying multi-threaded troubleshooting.

Inventive Principle:
Principle #32Color changes

3Speed

If asynchronous logging is implemented for multi-threaded operations, then logging performance and non-blocking operations are improved, but the source identification of log messages becomes unclear and complicated

Engineering Contradiction:
Improvelogging performanceVSAvoidsource identification clarity
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The patent assigns unique identification information to each thread and process before asynchronous logging operations begin. This preliminary tagging ensures that even though log messages are written asynchronously from multiple threads, each message retains clear source identification, preventing information loss while maintaining high logging performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10372466B2Rule-based monitoring engine with tracing capabilities for multi-threaded logging
Publication Date: 2019.08.06 WESTERN DIGITAL TECHNOLOGIES INC
  • US10372466B2 patent drawing
  • US10372466B2 patent drawing
  • US10372466B2 patent drawing

AI summary

A system and method embodied in a monitoring engine configured to create plug-ins to define functionality including rule-based configuration syntax adapted to intuitively and automatically launch the plug-ins as necessary in a software-based infrastructure or environment. The monitoring engine also includes a capability for tracing multi-threaded asynchronous logging onto a single file, by assigning a unique identification to each thread or rule initiated and facilitating each log according to a specific format and to formulate a combination of all the different thread identifications into a master unique identification that is easily traceable through an entire log file.