Foliage: Nourishing Evolving Software by Characterizing and Clustering Field Bugs
Modern programs, characterized by their complex functionalities, high integration, and rapid iteration cycles, are prone to errors.
This complexity poses challenges in program analysis and software testing, making it difficult to achieve comprehensive bug coverage during the development phase.
As a result, many bugs are only discovered during the software’s production phase.
Tracking and understanding these field bugs is essential but challenging: the uploaded field error reports are extensive, and trivial yet high-frequency bugs can overshadow important low-frequency bugs.
Additionally, application codebases evolve rapidly, causing a single bug to produce varied exceptions and stack traces across different code releases.
In this paper, we introduce Foliage, a bug tracking and clustering toolchain designed to trace and characterize field bugs in JavaScript applications, aiding developers in locating and fixing these bugs.
To address the challenges of efficiently tracking and analyzing the dynamic and complex nature of software bugs, Foliage proposes an error message enhancement technique.
Foliage also introduces the verbal-characteristic-based clustering technique, along with three evaluation metrics for bug clustering: V-measure, cardinality bias, and hit rate.
The results show that Foliage’s verbal-characteristic-based bug clustering outperforms previous bug clustering approaches by an average of 31.1% across these three metrics.
We present an empirical study of Foliage applied to a complex real-world application over a two-year production period, capturing over 250,000 error reports and clustering them into 132 unique bugs.
Finally, we open-source a bug dataset consisting of real and labeled error reports, which can be used to benchmark bug clustering techniques.
Thu 19 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 11:50 | Logging and Field BugsTechnical Papers at EI 10 Fritz Paschke Chair(s): Willem Visser Amazon Web Services | ||
10:30 20mResearch paper | A Large-Scale Evaluation for Log Parsing Techniques: How Far Are We? Technical Papers Zhihan Jiang Chinese University of Hong Kong, Jinyang Liu Chinese University of Hong Kong, Junjie Huang Chinese University of Hong Kong, Yichen LI Chinese University of Hong Kong, Yintong Huo Chinese University of Hong Kong, Jiazhen Gu Chinese University of Hong Kong, Zhuangbin Chen Sun Yat-sen University, Jieming Zhu Huawei Noah’s Ark Lab, Michael Lyu Chinese University of Hong Kong DOI Pre-print | ||
10:50 20mTalk | FastLog: An End-to-End Method to Efficiently Generate and Insert Logging Statements Technical Papers Xiaoyuan Xie Wuhan University, Zhipeng Cai Wuhan University, Songqiang Chen The Hong Kong University of Science and Technology, Jifeng Xuan Wuhan University DOI | ||
11:10 20mTalk | Face It Yourselves: An LLM-Based Two-Stage Strategy to Localize Configuration Errors via Logs Technical Papers Shiwen Shan Sun Yat-sen University, Yintong Huo Chinese University of Hong Kong, Yuxin Su Sun Yat-sen University, Yichen LI Chinese University of Hong Kong, Dan Li Sun Yat-sen University, Zibin Zheng Sun Yat-sen University DOI | ||
11:30 20mTalk | Foliage: Nourishing Evolving Software by Characterizing and Clustering Field Bugs Technical Papers Zhanyao Lei Shanghai Jiao Tong University, Yixiong Chen Shanghai Jiao Tong University, Mingyuan Xia AppetizerIO, Zhengwei Qi Shanghai Jiao Tong University DOI |