Logging Practices in Software Engineering: A Systematic Mapping Study

Shenghui Gu,Guoping Rong,He Zhang,Haifeng Shen
DOI: https://doi.org/10.1109/tse.2022.3166924
IF: 7.4
2022-01-01
IEEE Transactions on Software Engineering
Abstract:Background: Logging practices provide the ability to record valuable runtime information of software systems to support operations tasks such as service monitoring and troubleshooting. However, current logging practices face common challenges. On the one hand, although the importance of logging practices has been broadly recognized, most of them are still conducted in an arbitrary or ad-hoc manner, ending up with questionable or inadequate support to perform these tasks. On the other hand, considerable research effort has been carried out on logging practices, however, few of the proposed techniques or methods have been widely adopted in industry. Objective:This study aims to establish a comprehensive understanding of the research state of logging practices, with a focus on unveiling possible problems and gaps which further shed light on the potential future research directions. Method:We carried out a systematic mapping study on logging practices with 56 primary studies. Results:This study provides a holistic report of the existing research on logging practices by systematically synthesizing and analyzing the focus and inter-relationship of the existing research in terms of issues, research topics and solution approaches. Using 3W1H-Why to log, Where to log, What to log and How well is the logging-as the categorization standard, we find that: (1) the best known issues in logging practices have been repeatedly investigated; (2) the issues are often studied separately without considering their intricate relationships; (3) the Where and What questions have attracted the majority of research attention while little research effort has been made on the Why and How well questions; and (4) the relationships between issues, research topics, and approaches regarding logging practices appear many-to-many, which indicates a lack of profound understanding of the issues in practice and how they should be appropriately tackled. Conclusions:This study indicates a need to advance the state of research on logging practices. For example, more research effort should be invested on why to log to set the anchor of logging practices as well as on how well is the logging to close the loop. In addition, a holistic process perspective should be taken into account in both the research and the adoption related to logging practices.
What problem does this paper attempt to address?