Publication Type
Conference Proceeding Article
Version
publishedVersion
Publication Date
11-2018
Abstract
Much work has been published on extracting various kinds of models from logs that document the execution of running systems. In many cases, however, for example in the context of evolution, testing, or malware analysis, engineers are interested not only in a single log but in a set of several logs, each of which originated from a different set of runs of the system at hand. Then, the difference between the logs is the main target of interest. In this work we investigate the use of finite-state models for log differencing. Rather than comparing the logs directly, we generate concise models to describe and highlight their differences. Specifically, we present two algorithms based on the classic k-Tails algorithm: 2KDiff, which computes and highlights simple traces containing sequences of k events that belong to one log but not the other, and nKDiff, which extends k-Tails from one to many logs, and distinguishes the sequences of length k that are common to all logs from the ones found in only some of them, all on top of a single, rich model. Both algorithms are sound and complete modulo the abstraction defined by the use of k-Tails. We implemented both algorithms and evaluated their performance on mutated logs that we generated based on models from the literature. We conducted a user study including 60 participants demonstrating the effectiveness of the approach in log differencing tasks. We have further performed a case study to examine the use of our approach in malware analysis. Finally, we have made our work available in a prototype web-application, for experiments.
Keywords
Log analysis, Model inference
Discipline
Software Engineering | Theory and Algorithms
Research Areas
Data Science and Engineering
Publication
ESEC/FSE 2018: Proceedings of the 26th ACM Joint Meeting on European Software Engineering Con-ference and Symposium on the Foundations of Software Engineering, Lake Buena Vista, FL, November 4-9
First Page
49
Last Page
59
ISBN
9781450355735
Identifier
10.1145/3236024.3236069
Publisher
ACM
City or Country
New York
Citation
AMAR, Hen; BAO, Lingfeng; BUSANY, Nimrod; LO, David; and MAOZ, Shahar.
Using finite-state models for log differencing. (2018). ESEC/FSE 2018: Proceedings of the 26th ACM Joint Meeting on European Software Engineering Con-ference and Symposium on the Foundations of Software Engineering, Lake Buena Vista, FL, November 4-9. 49-59.
Available at: https://ink.library.smu.edu.sg/sis_research/4302
Copyright Owner and License
Publisher
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1145/3236024.3236069