Event Tracing Throughput Manager for Performance Overhead
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional application performance management systems face challenges in monitoring and managing web applications due to the complexity of software and hardware components, as conventional tracing methods are expensive and can negatively impact performance and disk space, limiting the ability to diagnose and monitor application execution effectively.
Innovation Solution
A framework for continuous, periodic, or on-demand tracing is introduced, utilizing a throughput manager to balance tracing detail and performance, allowing for real-time monitoring of transactions while minimizing overhead and maintaining low system impact, with agents managing tracing to adjust detail levels based on user-defined data rates and quotas.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional transaction trace is performed to monitor application performance, then detailed information about execution is obtained, but performance of the server and client is negatively impacted
Solution Approach 1:
The system dynamically adjusts the level of tracing detail based on current system performance conditions and user-defined data rates. The instrumentation components can switch between different tracing modes (detailed, summary, or minimal) to balance monitoring needs with performance constraints, allowing the system to adapt its behavior rather than using a fixed tracing approach
Solution Approach 2:
The patent changes key parameters of the tracing system including data rate quotas, detail levels, and sampling intervals. By adjusting these parameters, the system can optimize between obtaining sufficient diagnostic information and maintaining acceptable performance, allowing flexible configuration of tracing intensity based on specific operational requirements
2Measurement precision
If traditional transaction trace is performed to monitor application performance, then detailed execution information is obtained, but disk space is consumed
Solution Approach 1:
The system implements partial action by selectively tracing only certain transactions or methods based on user-defined criteria and data rate quotas. Instead of tracing all transactions in detail, it captures a representative subset or uses summary information for less critical transactions, thereby reducing disk space consumption while maintaining diagnostic effectiveness
Solution Approach 2:
The patent extracts only the essential tracing information needed for performance monitoring based on configured data rates and quotas. By filtering and selecting only the most relevant transaction details to capture, the system reduces the volume of trace data written to disk while preserving the ability to diagnose performance issues
3Reliability
If continuous tracing is performed to improve diagnostic capabilities, then monitoring completeness is improved, but overhead increases
Solution Approach 1:
The system employs periodic action by continuously monitoring system performance metrics and adjusting tracing activity accordingly. Rather than running at constant maximum intensity, the tracing operates in cycles where it intensifies when performance degradation is detected and reduces intensity when system conditions are stable, maintaining diagnostic capability while reducing average overhead
Solution Approach 2:
The patent implements feedback mechanisms where trace data and system performance metrics are continuously analyzed to adjust future tracing behavior. The system uses this feedback to optimize the balance between diagnostic completeness and overhead, dynamically modifying tracing parameters based on observed system conditions and the value of additional trace information
Data Source
AI summary
Embodiments provide methods for managing data generated by software transactions, such as event tracing software. In one embodiment, data generated by event tracing software is monitored. The throughput of the data generated may then be modulated based on various criteria, such as a target data rate. The throughput target may be specified on a per-system basis or individual basis. Based on the throughput, the level of detail recorded is modulated. Individual processes may determine a limit or quota depending on their contribution to the throughput. In one embodiment, the method calls for a trace are modified with different property specifications to meet a desired throughput of event tracing data.


