《表1 日志模板挖掘方法分析》
表1从不同维度对现有日志模板挖掘技术进行了对比.从输入角度看,3种日志模板挖掘技术都需要一定数量的日志集合,其中,基于静态代码分析的日志模板挖掘技术还需要系统源代码作为输入;从执行效率角度来看,静态代码分析方法扫描代码文件,从中获取日志打印语句进而生成日志模板,因此执行效率较高,频繁项集挖掘算法通过阈值调控,搜索出现频率超过阈值的日志文本token,因此对迭代要求低,执行效率较高,而基于聚类的日志挖掘技术需要不断计算日志之间的文本编辑距离,并进行多次迭代以对日志进行分组,因此执行效率低.总体而言,基于静态代码分析的日志模板挖掘的优点在于日志模板挖掘速度快,且由于模板直接从源代码中获取,结果十分精确,缺点在于依赖系统源代码,对于不同的程序设计语言,不同的日志打印类实现都需要重新定义输入;基于频繁项集挖掘的日志模板挖掘的优点在于日志模板挖掘速度快,无需其他先验知识,缺点在于受用户指定置信度和支持度阈值影响较大,且由于其仅关注日志频率,因此无法从出现频率较低的日志中挖掘模板,可能导致“冷门”日志无法匹配任何模板;基于聚类的日志模板挖掘的优点在于无需其他先验知识且无监督的聚类算法无需或仅需少量调参工作,缺点在于聚类算法迭代次数较多,执行速度较慢,且聚类算法仅仅根据日志的文本距离将日志划分为若干类型,还需要进一步识别日志模板.
图表编号 | XD00168937100 严禁用于非法目的 |
---|---|
绘制时间 | 2020.07.01 |
作者 | 贾统、李影、吴中海 |
绘制单位 | 北京大学信息科学技术学院、北京大学软件工程国家工程研究中心、北京大学软件工程国家工程研究中心 |
更多格式 | 高清、无水印(增值服务) |