An Exploratory Study of Log Placement Recommendation in an Enterprise System
Jeanderson C\^andido, Jan Haesen, Maur\'icio Aniche, Arie van Deursen

TL;DR
This study investigates machine learning techniques for recommending log placements in large enterprise codebases, analyzing industry data, sampling effects, and generalizability across open-source projects.
Contribution
It provides an empirical evaluation of ML models for log placement in industry, exploring data imbalance, sampling impacts, and cross-project learning.
Findings
Best model achieves 79% balanced accuracy
Sampling improves recall but reduces precision
Open-source models underperform on industry data
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
