On-Demand DLL Loading for Log Message Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current log message collection systems for Microsoft Windows operating systems face scalability limitations, particularly in large-scale computing environments, due to the need to copy and maintain thousands of Dynamic Link Libraries (DLLs), which consumes significant network bandwidth and time, and results in delayed startup and untranslatable events over time.

Innovation Solution

Implementing a method where only the necessary DLLs required for log message translation are loaded on-demand, rather than collecting all possible DLLs at startup, reducing the number of DLLs needed for translation and maintaining a cache of fetched DLLs for future use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all DLLs are collected at startup, then translation capability is complete, but network bandwidth consumption and startup time increase significantly

Engineering Contradiction:
Improvetranslation capabilityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary actions by collecting only the necessary DLLs required for log message translation at startup, rather than all possible DLLs. This selective preliminary collection reduces network bandwidth consumption and startup time while maintaining complete translation capability for the specific log messages that need to be translated.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts and collects only the specific DLLs that are necessary for translating log messages from the target system, separating them from the complete set of all possible DLLs. This extraction approach ensures that translation capability is maintained for required messages while significantly reducing the amount of data transferred over the network.

Inventive Principle:
Principle #2Taking out (Extraction)

2Adaptability or versatility

If all DLLs are copied to the collecting system, then all log messages can be translated, but the number of DLLs to maintain increases significantly

Engineering Contradiction:
Improvelog message translation coverageVSAvoidnumber of DLLs to maintain
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system extracts only the specific DLLs that are actually needed to translate the log messages that require translation. By identifying and collecting only these necessary DLLs rather than maintaining a complete library of all possible DLLs, the system maintains full adaptability for translating required log messages while dramatically reducing the quantity of DLLs that must be maintained.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The invention applies partial action by collecting exactly the right amount of DLLs needed for translation - no more, no less. This partial collection approach ensures that the system has sufficient translation coverage for all log messages that need to be translated, while avoiding the excessive maintenance burden of collecting and maintaining all possible DLLs that could ever be needed.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If DLLs are loaded for each host sequentially, then translation accuracy is maintained, but collection time increases

Engineering Contradiction:
Improvetranslation accuracyVSAvoidcollection time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary identification of which DLLs are actually needed for translating log messages from each host before proceeding with the collection process. This preliminary action allows the system to maintain translation accuracy by ensuring the correct DLLs are loaded, while reducing collection time by avoiding the sequential loading of unnecessary DLLs for each host.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8578393B1Log message collection employing on-demand loading of message translation libraries
Publication Date: 2013.11.05 ALERT LOGIC LLC
  • US8578393B1 patent drawing
  • US8578393B1 patent drawing
  • US8578393B1 patent drawing

AI summary

A log message collection system selects a configured host and fetches a log message. The log message collection system examines the fetched message to identify one or more DLLs necessary to translating the log message and determines whether the necessary DLL(s) have been loaded into a cache. If so, the log message is translated. If the DLLs are not in the cache, the log message collection system fetches from the log message host only the DLLs necessary to translate that fetched message. After the message is translated, the log message collection system fetches the next log message, identifies the necessary DLLs for that log message, and fetches the DLLs necessary to translate that message.