Print Email Facebook Twitter An Exploratory Study of Log Placement Recommendation in an Enterprise System Title An Exploratory Study of Log Placement Recommendation in an Enterprise System Author Barros Cândido, J. (TU Delft Software Engineering; Adyen N.V) Haesen, Jan (Adyen N.V) Aniche, Maurício (TU Delft Software Engineering) van Deursen, A. (TU Delft Software Technology) Contributor O'Conner, L. (editor) Department Software Technology Date 2021 Abstract Logging is a development practice that plays an important role in the operations and monitoring of complex systems. Developers place log statements in the source code and use log data to understand how the system behaves in production. Unfortunately, anticipating where to log during development is challenging. Previous studies show the feasibility of leveraging machine learning to recommend log placement despite the data imbalance since logging is a fraction of the overall code base. However, it remains unknown how those techniques apply to an industry setting, and little is known about the effect of imbalanced data and sampling techniques. In this paper, we study the log placement problem in the code base of Adyen, a large-scale payment company. We analyze 34,526 Java files and 309,527 methods that sum up +2M SLOC. We systematically measure the effectiveness of five models based on code metrics, explore the effect of sampling techniques, understand which features models consider to be relevant for the prediction, and evaluate whether we can exploit 388,086 methods from 29 Apache projects to learn where to log in an industry setting. Our best performing model achieves 79% of balanced accuracy, 81% of precision, 60% of recall. While sampling techniques improve recall, they penalize precision at a prohibitive cost. Experiments with open-source data yield under-performing models over Adyen's test set; nevertheless, they are useful due to their low rate of false positives. Our supporting scripts and tools are available to the community. Subject Log PlacementLog RecommendationLogging PracticesSupervised Learning To reference this document use: http://resolver.tudelft.nl/uuid:a2658dc4-5fd3-4f91-98d2-32998dfafd5b DOI https://doi.org/10.1109/MSR52588.2021.00027 Publisher IEEE, Piscataway ISBN 978-1-6654-2985-6 Source 2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR): Proceedings Event 2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR), 2021-05-17 → 2021-05-19, Virtual at Madrid, Spain Series Proceedings - 2021 IEEE/ACM 18th International Conference on Mining Software Repositories, MSR 2021 Bibliographical note Accepted author manuscript Part of collection Institutional Repository Document type conference paper Rights © 2021 J. Barros Cândido, Jan Haesen, Maurício Aniche, A. van Deursen Files PDF main.pdf 447.19 KB Close viewer /islandora/object/uuid:a2658dc4-5fd3-4f91-98d2-32998dfafd5b/datastream/OBJ/view