Yao, Kundi (2018) Log4Perf: Suggesting and Updating Logging Locations for Web-based Systems' Performance Monitoring. Masters thesis, Concordia University.
Preview |
Text (application/pdf)
1MBYao_MASc_S2018.pdf - Accepted Version |
Abstract
Performance assurance activities are an essential step in the release cycle of software systems. Logs have become one of the most important sources of information that is used to monitor, understand and improve software performance. However, developers often face the challenge of making logging decisions, i.e., neither logging too little and logging too much is desirable. Although prior research has proposed techniques to assist in logging decisions, those automated logging guidance techniques are rather general, without considering a particular goal, such as monitoring software performance. In this thesis, we present Log4Perf, an automated approach that provides suggestions of where to insert logging statements with the goal of monitoring web-based systems' software performance. In particular, our approach builds and manipulates a statistical performance model to identify the locations in the source code that statistically significantly influence software performance. To evaluate Log4Perf, we conduct case studies on open source systems, i.e.,
CloudStore and OpenMRS, and one large-scale commercial system. Our evaluation results show that Log4Perf can build well-fit statistical performance models, indicating that such models can be leveraged to investigate the influence of locations in the source code on performance. Also, the suggested logging locations are often small and simple methods that do not have logging statements and that are not performance hotspots, making our approach an ideal complement to traditional approaches that are based on software metrics or performance hotspots. In addition, we proposed approaches that can suggest the need for updating logging locations when software evolves. After evaluating our approach, we manually examine the logging locations that are newly suggested or deprecated and identify seven root-causes.
Log4Perf is integrated into the release engineering process of the commercial software to provide logging suggestions on a regular basis.
Divisions: | Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering |
---|---|
Item Type: | Thesis (Masters) |
Authors: | Yao, Kundi |
Institution: | Concordia University |
Degree Name: | M.A. Sc. |
Program: | Software Engineering |
Date: | 22 August 2018 |
Thesis Supervisor(s): | Shang, Weiyi |
ID Code: | 984579 |
Deposited By: | Kundi Yao |
Deposited On: | 16 Nov 2018 16:49 |
Last Modified: | 10 Oct 2020 01:00 |
Repository Staff Only: item control page