TL;DR
This paper introduces an automated method that uses Git history mining and a degree of interest model to help developers adapt log levels for features as their importance changes over software evolution.
Contribution
It presents a novel Eclipse IDE plugin that automatically revives and adjusts feature log levels based on code 'interestingness' derived from Git histories.
Findings
Analyzed 99.22% of logging statements across 18 Java projects.
Increased log level distribution by approximately 20%.
Improved focus of logs in bug fix contexts by about 83%.
Abstract
Logging -- used for system events and security breaches to describe more informational yet essential aspects of software features -- is pervasive. Given the high transactionality of today's software, logging effectiveness can be reduced by information overload. Log levels help alleviate this problem by correlating a priority to logs that can be later filtered. As software evolves, however, levels of logs documenting surrounding feature implementations may also require modification as features once deemed important may have decreased in urgency and vice-versa. We present an automated approach that assists developers in evolving levels of such (feature) logs. The approach, based on mining Git histories and manipulating a degree of interest (DOI) model, transforms source code to revitalize feature log levels based on the "interestingness" of the surrounding code. Built upon JGit and Mylyn,…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
