Dynamic Log Management for Distributed Stream Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing environments, such as streaming applications and stream analytics systems, the continuous operation and reduced log settings lead to a challenge in diagnosing underlying causes of frequent warnings/errors, as only important warning/error messages are recorded, limiting the ability to generate lower-level log data without disrupting the system.

Innovation Solution

A system and method for dynamic log management that allows for the generation of lower-level log data by deploying a log-configuration application to modify logger configurations on worker nodes, enabling the recording of info, debug, or trace messages without stopping the running application, using a cluster manager to coordinate tasks and adjust logging levels dynamically.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If logging is configured to record only important warning/error messages, then system performance is improved and space requirements are reduced, but the ability to diagnose underlying causes of frequent warnings/errors is limited

Engineering Contradiction:
Improvesystem performanceVSAvoiddiagnostic information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements dynamic log management by allowing the logging level configuration to be changed at runtime without stopping the streaming application. The system can switch between different logging levels (e.g., ERROR, WARN, INFO, DEBUG) dynamically based on diagnostic needs, resolving the contradiction between maintaining high performance with minimal logging and enabling comprehensive diagnostics when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the logging level parameter dynamically by committing a configuration job that updates the logger configuration on worker nodes. This parameter change allows the system to adjust the amount of information recorded without affecting the continuous operation of the streaming application, thus resolving the contradiction between performance and diagnostic capability.

Inventive Principle:
Principle #35Parameter changes

2Loss of information

If logging level is increased to record lower-level log data, then diagnostic capability is improved, but space requirements and system performance deteriorate

Engineering Contradiction:
Improvediagnostic informationVSAvoidsystem performance
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The system dynamically adjusts logging levels based on operational needs. During normal operation, the system maintains high performance with minimal logging, but can switch to detailed logging when diagnostics are required, without impacting the continuous execution of the streaming application.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system can periodically switch between different logging configurations based on operational context. The configuration job can be committed to change logging levels temporarily for diagnostics and then reverted to performance-optimized settings, creating a periodic action that balances both requirements.

Inventive Principle:
Principle #19Periodic action

3Adaptability or versatility

If the streaming application is stopped to modify logger configuration, then logging level can be changed, but system availability and performance are reduced

Engineering Contradiction:
Improvelogging configuration flexibilityVSAvoidsystem availability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent enables continuous operation of the streaming application while modifying logging configurations. The configuration job is committed to the cluster and executed on worker nodes without stopping the main application, ensuring that system availability is maintained while still allowing logging level changes for diagnostic purposes.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system uses an intermediary configuration mechanism (configuration job committed to the cluster) that mediates between the need to change logging configurations and the requirement to maintain system availability. This intermediary allows configuration changes to be applied dynamically without direct interruption to the streaming application execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11544133B2System and method for dynamic log management of stream processing in a distributed environment
Publication Date: 2023.01.03 ORACLE INT CORP
  • US11544133B2 patent drawing
  • US11544133B2 patent drawing
  • US11544133B2 patent drawing

AI summary

A system and method for dynamic log management of stream processing in a distributed computing environment, such as, for example, a streaming application or stream analytics system. A streaming application can be deployed or published to a cluster, to execute as a client application. A cluster manager coordinates with worker nodes, to commit tasks associated with the streaming application. If a need arises to generate lower-level log data associated with the streaming application, for example to diagnose an underlying cause of a warning/error message, a configuration job can be committed to the cluster to execute as a separate log-configuration application. The log-configuration application operates with the cluster manager to determine the set of working nodes currently associated with the streaming application, and modify the logger configuration at those nodes, to record or otherwise provide log data according to a modified logging level, for example to provide lower-level log messages.