Log-based software monitoring: a systematic mapping study
Modern software development and operations rely on monitoring to understand how systems behave in production. The data provided by application logs and runtime environment are essential to detect and diagnose undesired behavior and improve system reliability. However, despite the rich ecosystem arou...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
PeerJ Inc.
2021-05-01
|
Series: | PeerJ Computer Science |
Subjects: | |
Online Access: | https://peerj.com/articles/cs-489.pdf |
_version_ | 1818864215909203968 |
---|---|
author | Jeanderson Cândido Maurício Aniche Arie van Deursen |
author_facet | Jeanderson Cândido Maurício Aniche Arie van Deursen |
author_sort | Jeanderson Cândido |
collection | DOAJ |
description | Modern software development and operations rely on monitoring to understand how systems behave in production. The data provided by application logs and runtime environment are essential to detect and diagnose undesired behavior and improve system reliability. However, despite the rich ecosystem around industry-ready log solutions, monitoring complex systems and getting insights from log data remains a challenge. Researchers and practitioners have been actively working to address several challenges related to logs, e.g., how to effectively provide better tooling support for logging decisions to developers, how to effectively process and store log data, and how to extract insights from log data. A holistic view of the research effort on logging practices and automated log analysis is key to provide directions and disseminate the state-of-the-art for technology transfer. In this paper, we study 108 papers (72 research track papers, 24 journals, and 12 industry track papers) from different communities (e.g., machine learning, software engineering, and systems) and structure the research field in light of the life-cycle of log data. Our analysis shows that (1) logging is challenging not only in open-source projects but also in industry, (2) machine learning is a promising approach to enable a contextual analysis of source code for log recommendation but further investigation is required to assess the usability of those tools in practice, (3) few studies approached efficient persistence of log data, and (4) there are open opportunities to analyze application logs and to evaluate state-of-the-art log analysis techniques in a DevOps context. |
first_indexed | 2024-12-19T10:28:07Z |
format | Article |
id | doaj.art-42ec5a2ec2d34a9192a1e78f7cc5c847 |
institution | Directory Open Access Journal |
issn | 2376-5992 |
language | English |
last_indexed | 2024-12-19T10:28:07Z |
publishDate | 2021-05-01 |
publisher | PeerJ Inc. |
record_format | Article |
series | PeerJ Computer Science |
spelling | doaj.art-42ec5a2ec2d34a9192a1e78f7cc5c8472022-12-21T20:25:50ZengPeerJ Inc.PeerJ Computer Science2376-59922021-05-017e48910.7717/peerj-cs.489Log-based software monitoring: a systematic mapping studyJeanderson Cândido0Maurício Aniche1Arie van Deursen2Department of Software Technology, Delft University of Technology, Delft, NetherlandsDepartment of Software Technology, Delft University of Technology, Delft, NetherlandsDepartment of Software Technology, Delft University of Technology, Delft, NetherlandsModern software development and operations rely on monitoring to understand how systems behave in production. The data provided by application logs and runtime environment are essential to detect and diagnose undesired behavior and improve system reliability. However, despite the rich ecosystem around industry-ready log solutions, monitoring complex systems and getting insights from log data remains a challenge. Researchers and practitioners have been actively working to address several challenges related to logs, e.g., how to effectively provide better tooling support for logging decisions to developers, how to effectively process and store log data, and how to extract insights from log data. A holistic view of the research effort on logging practices and automated log analysis is key to provide directions and disseminate the state-of-the-art for technology transfer. In this paper, we study 108 papers (72 research track papers, 24 journals, and 12 industry track papers) from different communities (e.g., machine learning, software engineering, and systems) and structure the research field in light of the life-cycle of log data. Our analysis shows that (1) logging is challenging not only in open-source projects but also in industry, (2) machine learning is a promising approach to enable a contextual analysis of source code for log recommendation but further investigation is required to assess the usability of those tools in practice, (3) few studies approached efficient persistence of log data, and (4) there are open opportunities to analyze application logs and to evaluate state-of-the-art log analysis techniques in a DevOps context.https://peerj.com/articles/cs-489.pdfLogging practicesLog infrastructureLog analysisDevOpsMonitoring |
spellingShingle | Jeanderson Cândido Maurício Aniche Arie van Deursen Log-based software monitoring: a systematic mapping study PeerJ Computer Science Logging practices Log infrastructure Log analysis DevOps Monitoring |
title | Log-based software monitoring: a systematic mapping study |
title_full | Log-based software monitoring: a systematic mapping study |
title_fullStr | Log-based software monitoring: a systematic mapping study |
title_full_unstemmed | Log-based software monitoring: a systematic mapping study |
title_short | Log-based software monitoring: a systematic mapping study |
title_sort | log based software monitoring a systematic mapping study |
topic | Logging practices Log infrastructure Log analysis DevOps Monitoring |
url | https://peerj.com/articles/cs-489.pdf |
work_keys_str_mv | AT jeandersoncandido logbasedsoftwaremonitoringasystematicmappingstudy AT mauricioaniche logbasedsoftwaremonitoringasystematicmappingstudy AT arievandeursen logbasedsoftwaremonitoringasystematicmappingstudy |