Application Dependency Discovery for Root Cause Health Monitoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing monitoring systems struggle to efficiently identify the root cause of performance issues in complex computer systems due to their reliance on human administrators and manual correlation of dependencies, leading to prolonged troubleshooting and increased system downtime.
Innovation Solution
A monitoring application that collects and reports the operating status of applications and their dependencies using existing monitoring interfaces, automatically configures and updates, and employs machine learning to predict potential unhealthy states and recommend corrective actions, while simulating API problems to test system resilience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If manual correlation of dependencies by human administrators is used, then existing monitoring systems can operate with simple infrastructure, but root cause identification time increases and system downtime extends
Solution Approach 1:
The system automatically correlates dependencies and identifies root causes without requiring human administrators to manually trace through dependency graphs. The monitoring system self-services the troubleshooting process by automatically analyzing dependency relationships and generating root cause determinations.
Solution Approach 2:
The patent replaces the mechanical process of human administrators manually correlating dependencies with an automated computer-based system that electronically traces dependency relationships and identifies root causes, thereby reducing troubleshooting time.
2Productivity
If automated monitoring of dependencies is implemented, then root cause identification speed improves, but system complexity and infrastructure requirements increase
Solution Approach 1:
The monitoring system performs multiple functions including collecting metrics, correlating dependencies, identifying root causes, and generating notifications all within a single integrated platform, thereby improving productivity without proportionally increasing complexity.
Solution Approach 2:
The system introduces a dependency correlation service as an intermediary layer that automatically analyzes relationships between monitored components, enabling fast root cause identification without requiring direct complex integration between all system components.
3Reliability
If human administrators manually trace break events, then existing monitoring tools can be used with minimal modification, but incident recovery time increases
Solution Approach 1:
The system continuously monitors dependency status and provides immediate feedback about potential failures and root causes, enabling faster incident recovery by automatically identifying problems before they fully impact the system and guiding administrators through the resolution process.
Solution Approach 2:
The monitoring system performs preliminary analysis of dependency relationships and metrics to predict and identify root causes before they cause system failures, allowing administrators to take corrective action earlier and reduce overall incident recovery time.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
Techniques for monitoring operating statuses of an application and its dependencies are provided. A monitoring application may collect and report the operating status of the monitored application and each dependency. Through use of existing monitoring interfaces, the monitoring application can collect operating status without requiring modification of the underlying monitored application or dependencies. The monitoring application may determine a problem service that is a root cause of an unhealthy state of the monitored application. Dependency analyzer and discovery crawler techniques may automatically configure and update the monitoring application. Machine learning techniques may be used to determine patterns of performance based on system state information associated with performance events and provide health reports relative to a baseline status of the monitored application. Also provided are techniques for testing a response of the monitored application through modifications to API calls. Such tests may be used to train the machine learning model.