Leveraging System Performance Metrics and Execution Logs to Proactively Diagnose System of Systems Performance Issues

Syer et al. published a paper titled “Leveraging Performance Counters and Execution Logs to Diagnose Memory-Related Performance Issues” in the International Conference on Software Maintenance in 2013. In that paper, the authors describe an automated approach that combines execution logs and performance counters (e.g. memory heap usage) in order to assist performance analysts in diagnosing memory-related performance issues (e.g. memory leaks) that appear in load tests.
We analysed the approach proposed in that paper by Syer et al. We then designed and built a prototype correlation engine that uses that approach, and applied that engine on both simulation and real-world applications, in order to characterise it. We finally developed a proactive error detection system prototype that proactively collects execution logs and performance counters from running applications, and uses the approach proposed by Syer et al. in order to correlate them, and raise alarms that will give a massive advantage to performance analysts in case of failures.