Excessibility.TelemetryCapture.Analyzers.Memory (Excessibility v0.14.0)
View SourceAnalyzes memory usage patterns across timeline events.
Detects:
- Memory bloat (large growth between events)
- Memory leaks (3+ consecutive increases)
Uses adaptive thresholds based on timeline statistics to avoid false positives and work across different test sizes.
Algorithm
- Calculate baseline stats (mean, median, std deviation)
- Calculate median delta between events
- Detect outliers:
- Warning: Growth > 3x median delta
- Critical: Growth > 10x median delta OR size > mean + 2std_dev
- Detect leaks: 3+ consecutive increases
Output
Returns findings and statistics:
%{
findings: [
%{
severity: :warning,
message: "Memory grew 5.2x between events (45 KB → 234 KB)",
events: [3, 4],
metadata: %{growth_multiplier: 5.2, delta_bytes: 189000}
}
],
stats: %{min: 2300, max: 890000, avg: 145000, median_delta: 12000}
}
Summary
Functions
Callback implementation for Excessibility.TelemetryCapture.Analyzer.analyze/2.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.default_enabled?/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.name/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.requires_enrichers/0.
Functions
Callback implementation for Excessibility.TelemetryCapture.Analyzer.analyze/2.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.default_enabled?/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.name/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.requires_enrichers/0.