TL;DR
This study investigates duplicate logging statements in large open source systems, identifies problematic patterns, develops an automated detection tool, and explores their relationship with code clones, revealing significant prevalence and maintenance challenges.
Contribution
The paper introduces DLFinder, an automated tool for detecting problematic duplicate logging code smells, validated through manual analysis and developer feedback, and explores their connection with code clones.
Findings
83% of duplicate logging smells are in cloned code
17% of smells are in micro-clones hard to detect
Over half of duplicate logs are in short code snippets
Abstract
In this paper, we focus on studying duplicate logging statements, which are logging statements that have the same static text message. We manually studied over 4K duplicate logging statements and their surrounding code in five large-scale open source systems. We uncovered five patterns of duplicate logging code smells. For each instance of the duplicate logging code smell, we further manually identify the potentially problematic and justifiable cases. Then, we contact developers to verify our manual study result. We integrated our manual study result and the feedback of developers into our automated static analysis tool, DLFinder, which automatically detects problematic duplicate logging code smells. We evaluated DLFinder on the five manually studied systems and three additional systems. In total, combining the results of DLFinder and our manual analysis, we reported 91 problematic…
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.
