Studying and detecting log-related issues

被引:33
作者
Hassani, Mehran [1 ]
Shang, Weiyi [1 ]
Shihab, Emad [1 ]
Tsantalis, Nikolaos [1 ]
机构
[1] Concordia Univ, Dept Comp Sci & Software Engn, Montreal, PQ, Canada
关键词
Empirical study; Log; Software bug; Mining software repositories; LINES; CODE;
D O I
10.1007/s10664-018-9603-z
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Logs capture valuable information throughout the execution of software systems. The rich knowledge conveyed in logs is highly leveraged by researchers and practitioners in performing various tasks, both in software development and its operation. Log-related issues, such as missing or having outdated information, may have a large impact on the users who depend on these logs. In this paper, we first perform an empirical study on log-related issues in two large-scale, open source software systems. We find that the files with log-related issues have undergone statistically significantly more frequent prior changes, and bug fixes. We also find that developers fixing these log-related issues are often not the ones who introduced the logging statement nor the owner of the method containing the logging statement. Maintaining logs is more challenging without clear experts. Finally, we find that most of the defective logging statements remain unreported for a long period (median 320 days). Once reported, the issues are fixed quickly (median five days). Our empirical findings suggest the need for automated tools that can detect log-related issues promptly. We conducted a manual study and identified seven root-causes of the log-related issues. Based on these root causes, we developed an automated tool that detects four evident types of log-related issues. Our tool can detect 75 existing inappropriate logging statements reported in 40 log-related issues. We also reported new issues found by our tool to developers and 38 previously unknown issues in the latest release of the subject systems were accepted by developers.
引用
收藏
页码:3248 / 3280
页数:33
相关论文
共 45 条
  • [1] [Anonymous], 2015, PROC USENIX ANN TECH
  • [2] [Anonymous], 2008, PROC 1 USENIX C ANAL
  • [3] [Anonymous], 2017, OPEN SOURCE ELASTIC
  • [4] METHOD SLURRING - THE GROUNDED THEORY PHENOMENOLOGY EXAMPLE
    BAKER, C
    WUEST, J
    STERN, PN
    [J]. JOURNAL OF ADVANCED NURSING, 1992, 17 (11) : 1355 - 1360
  • [5] The Bones of the System: A Case Study of Logging and Telemetry at Microsoft
    Barik, Titus
    DeLine, Robert
    Drucker, Steven
    Fisher, Danyel
    [J]. 2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C), 2016, : 92 - 101
  • [6] Bird C., 2011, 19 ACM SIGSOFT S 13, P4, DOI DOI 10.1145/2025113.2025119
  • [7] Does Distributed Development Affect Software Quality? An Empirical Case Study of Windows Vista
    Bird, Christian
    Nagappan, Nachiappan
    Devanbu, Premkumar
    Gall, Harald
    Murphy, Brendan
    [J]. COMMUNICATIONS OF THE ACM, 2009, 52 (08) : 85 - 93
  • [8] Boulon J., 2008, P CCA, V8, P1
  • [9] Carasso David., 2012, Exploring splunk
  • [10] Chen B, 2017, 2017 IEEE ACM 39 IEE