An Exploratory Study of Logging Configuration Practice in Java

Chen Zhi, Jianwei Yin, Shuiguang Deng, Maoxin Ye, Min Fu, Tao Xie

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Logging components are an integral element of software systems. These logging components receive the logging requests generated by the logging code and process these requests according to logging configurations. Logging configurations play an important role on the functionality, performance, and reliability of logging. Although recent research has been conducted to understand and improve current practice on logging code, no existing research focuses on logging configurations. To fill this gap, we conduct an exploratory study on logging configuration practice of 10 open-source projects and 10 industrial projects written in Java in various sizes and domains. We quantitatively show how logging configurations are used with respect to logging management, storage, and formatting. We categorize and analyze the change history (1,213 revisions) of logging configurations to understand how the logging configurations evolve. Based on these study results, we reveal 10 findings about current practice of logging configurations. As a proof of concept, we develop a simple detector based on some of our findings. We apply our detector on three popular open-source projects and identify three long-lived issues (more than two years). All these issues are confirmed and two of them have been fixed by the open-source developers.

Original languageEnglish (US)
Title of host publicationProceedings - 2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages459-469
Number of pages11
ISBN (Electronic)9781728130941
DOIs
StatePublished - Sep 2019
Event2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019 - Cleveland, United States
Duration: Sep 30 2019Oct 4 2019

Publication series

NameProceedings - 2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019

Conference

Conference2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019
CountryUnited States
CityCleveland
Period9/30/1910/4/19

Keywords

  • empirical study
  • logging
  • logging configurations

ASJC Scopus subject areas

  • Software
  • Safety, Risk, Reliability and Quality

Fingerprint Dive into the research topics of 'An Exploratory Study of Logging Configuration Practice in Java'. Together they form a unique fingerprint.

  • Cite this

    Zhi, C., Yin, J., Deng, S., Ye, M., Fu, M., & Xie, T. (2019). An Exploratory Study of Logging Configuration Practice in Java. In Proceedings - 2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019 (pp. 459-469). [8919133] (Proceedings - 2019 IEEE International Conference on Software Maintenance and Evolution, ICSME 2019). Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ICSME.2019.00079