Searcharxiv⌕ Search

arXiv subjects

Zahra G. Yazdi

Publications and source records attributed to Zahra G. Yazdi.

2 recordsLinked to original sources

Towards a Taxonomy of Software Log Smells

Logging is an important part of modern software projects; logs are used in several tasks such as debugging and testing. Due to the complex nature of logging, it remains a difficult task with several pitfalls that could have serious consequences. Several other domains of software engineering have mitigated such threats by identifying the early signs of more serious issues, i.e., ``smells''. However, in the context of software logging, the concept of smells has only been investigated in a limited and narrow scope. The goal of this study is to systematically organize logging issues reported in the literature into a taxonomy of log smells that can help practitioners to better understand logging quality issues. To further help the practitioners and to identify issues that need more attention from the research community, we also map the identified smells to existing tools repairing them. We conducted a survey of the scientific literature to identify logging issues and related tools. After extracting relevant data from 61 articles, we used open coding to define logging issues and applied card sorting to derive log smells from these issues. Finally, we classified the tools based on their reported output. We present a taxonomy of nine log smells, describe several facets for each of them, and report the results of a preliminary validation of the taxonomy using a dataset of logging issues extracted from open-source projects. We also review existing tools repairing/removing some of these facets, highlighting the lack of tools addressing some log smells and identifying future research opportunities to close this gap. Our findings indicate that software logging is susceptible to a wide variety of log smells affecting both the logging code and the resulting log files. Understanding these smells, along with their causes and consequences, can help reduce their occurrence and improve logging quality.

cs.SE↗

Cleaning Logs for Downstream Tasks (Registered Report)

Background: Software systems generate logs during execution to record critical events and runtime information for troubleshooting and monitoring. However, in practice, logs often contain significant amounts of redundant and irrelevant information, which can negatively impact the performance of downstream analysis tasks, such as model inference and anomaly detection. Objective: The objective of this study is to clean log data by identifying and removing free-standing messages -- messages that are not relevant to the execution behaviors of interest and are interleaved with messages capturing the system's functional behavior. Method: To address this objective, we propose LogPurifier, a task-agnostic log-cleaning approach based on dependency relationships between log message templates. The paper presents a plan for an empirical evaluation using a controlled experimental design to assess the impact of LogPurifier on the effectiveness and efficiency of two downstream tasks: model inference and anomaly detection.

cs.SE↗