规范和充分的日志是良好代码质量的必要因素,也是软件故障诊断的重要手段.然而,代码的质量管理受限于大规模软件代码的高复杂程度,目前,利用日志信息进行软件故障重现和诊断的难度大、效率低.从日志特征分析、基于日志的故障诊断、日志的增强这3个方面综述了日志研究的现状.通过对几种常用的大规模开源软件的日志进行调研,发现了一些日志相关的特征和规律以及现有工具难以解决的问题.最后,对未来的研究工作进行了展望,并分析了可能面对的挑战.
Standardized and sufficient log is a necessary part of good code quality, and it plays an important role in failure diagnosis as well. Code quality management, however, is restricted by the high complexity of large-scale software. Currently, it's difficult and inefficient to reproduce and diagnose system failure with logs. This paper surveys log-related work from three aspects including log characterization, failure diagnosis with log and log enhancement. Through detailed study on several widely-used open-source software, the paper reveals some log-related observations, along with the problems which have not been well handled by existing tools. Finally, it proposes several possible log-related work, and analyzes potential challenges.