Software Failure Prediction via Error Log Pattern Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In engineering pipelines, monitoring and predicting software process failures is resource-intensive and often leads to human error, exacerbating issues due to the complex interrelations between software processes, which traditional methods struggle to address effectively.

Innovation Solution

The system generates error log messages, preprocesses them to standardize data, groups similar logs, converts them into discrete event sequences, and uses deep learning and weighted Bayesian variational inference models to identify error-causing patterns for predictive failure analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If detailed monitoring of each software process is implemented, then failure detection capability is improved, but resource consumption increases significantly

Engineering Contradiction:
Improvefailure detection capabilityVSAvoidresource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent segments the monitoring task by dividing software processes into groups based on interrelation patterns. Instead of monitoring each process individually, the system identifies and monitors key processes within each group, using pattern recognition to infer the status of related processes. This segmentation reduces the total number of processes requiring direct monitoring while maintaining comprehensive failure detection capability.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If traditional problem resolution methods are used, then operational teams can respond to failures, but human error increases and problems are exacerbated

Engineering Contradiction:
Improvefailure response capabilityVSAvoiderror rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements preliminary action by predicting software process failures before they occur through pattern recognition and machine learning models. The system analyzes historical error logs and current process states to identify patterns that precede failures, enabling operational teams to take corrective actions proactively. This shifts the response from reactive (after failure) to preventive (before failure), reducing human error and preventing problem escalation.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If complex interrelated software processes are monitored using traditional methods, then operational teams can identify failures, but the complexity of resolution increases

Engineering Contradiction:
Improvefailure identification accuracyVSAvoidresolution complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements feedback mechanisms by continuously analyzing error logs and process states, comparing current patterns against historical data and known failure patterns. The system provides feedback to operational teams in the form of predicted failures and recommended actions, reducing resolution complexity by guiding teams through standardized response procedures based on identified patterns rather than requiring complex manual analysis of interrelated processes.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11176015B2Log message analysis and machine-learning based systems and methods for predicting computer software process failures
Publication Date: 2021.11.16 OPTUM TECH INC
  • US11176015B2 patent drawing
  • US11176015B2 patent drawing
  • US11176015B2 patent drawing

AI summary

In general, embodiments of the present invention provide methods, apparatus, systems, computing devices, computing entities, and/or the like for software process failure prevention are provided herein. Such embodiments may include steps of: generating error logs at one or more phases of a software process lifecycle; preprocessing each error log to standardize error log data; grouping the preprocessed error logs based on similar characteristics of the preprocessed error logs; associating each group of preprocessed error logs with one or more discrete events of the software process lifecycle; converting each preprocessed error log into a sequence of associated discrete events of the software process lifecycle; merging redundant sequences of associated discrete events of the software process lifecycle; and identifying one or more error causing patterns for software process failure prediction from the sequences of associated discrete events of the software process lifecycle.