有效去除操作日志消息:在模型推断中的应用
软件工程
2020-04-17 v2
摘要
模型推断旨在从软件系统的执行日志中提取准确模型。然而现实中,日志可能包含某些会恶化模型推断性能的“噪声”。一种常见噪声形式见于系统日志中:其不仅包含记录系统功能行为的事务消息,还包含记录系统操作状态的操作消息(例如周期性心跳以跟踪内存使用)。在低质量日志中,事务消息与操作消息随机交错,导致将操作行为错误地纳入系统模型,而理想情况下模型应仅反映系统功能行为。因此在推断模型前去除日志中的操作消息十分重要。本文提出 LogCleaner,一种去除操作日志消息的新技术。LogCleaner 首先进行周期性分析以过滤周期消息,随后进行依赖分析以计算所有日志消息的依赖程度,并依据其依赖关系去除操作消息。在两个专有及 11 个公开可用日志数据集上的实验结果表明,LogCleaner 平均能准确去除 98% 的操作消息并保留 81% 的事务消息。此外,使用经 LogCleaner 预处理的日志降低了模型推断的执行时间(加速比依系统特性在 1.5 至 946.7 之间),并显著提升推断模型的准确度,使其接受正确系统行为的能力提高(+43.8 pp 平均,pp=百分比点)、拒绝错误系统行为的能力提高(+15.0 pp 平均)。
引用
@article{arxiv.2004.07194,
title = {Effective Removal of Operational Log Messages: an Application to Model Inference},
author = {Donghwan Shin and Domenico Bianculli and Lionel Briand},
journal= {arXiv preprint arXiv:2004.07194},
year = {2020}
}