Furthermore, due to algorithmic optimizations we can reduce the total time for computing a diagnosis to below a minute, and streamline the analysis process. Previously, these locations needed to be found manually, severely limiting adoption of ConfDoctor for new targets. ConfGuru adds a fast static analysis approach to identify all code locations where option values are read (so-called Option Read Points (ORPs)) in a targeted application. ConfGuru complements and improves upon ConfDoctor, our previous (semi-automated) approach for diagnosis of configuration errors. In this work we propose ConfGuru, an approach and a tool which attempts to fulfill all three of these requirements. little runtime data/instrumentation), (ii) full automation of the diagnosis process, and (iii) fast computation of a diagnosis. These include: (i) low in-trusiveness (i.e. Automated diagnosis of configuration errors can help here, yet the practical value and acceptance of the proposed solutions depend-besides sufficient accuracy-on satisfying some non-functional requirements. The number of available configuration options and their dependencies increase the likelihood of introducing configuration mistakes, with costly faults typically manifesting in a production environment. Software applications routinely offer configuration settings to adapt them to specific deployment requirements. Our findings also inspire opportunities for researchers and logging library providers to help developers balance the benefits and costs of logging, for example, to support different log levels for different parts of a logging statement, or to help developers estimate and reduce the negative impact of logging statements. Future research needs to consider such a wide range of logging benefits and costs when developing automated logging strategies. Developers need to be fully aware of the benefits and costs of logging, in order to better benefit from logging (e.g., leveraging logging to enable users to solve problems by themselves) and avoid unnecessary negative impact (e.g., exposing users' sensitive information). We also observe that developers use ad hoc strategies to balance the benefits and costs of logging. We observe that developers consider a wide range of logging benefits and costs, while most of the uncovered benefits and costs have never been observed nor discussed in prior work. The findings of our qualitative study draw a comprehensive picture of the benefits and costs of logging from developers' perspectives. In order to fill the gap between developers' logging considerations and researchers' intuition, we performed a qualitative study that combines a survey of 66 developers and a case study of 223 logging-related issue reports. Without understanding developers' logging considerations, automated approaches for logging decisions are based primarily on researchers' intuition which may not be convincing to developers. However, there exists no work that systematically studies developers' logging considerations, i.e., the benefits and costs of logging from developers' perspectives. Prior studies aimed to improve logging by proactively inserting logging statements in certain code snippets or by learning where to log from existing logging code. In practice, logging appropriately is a challenge for developers. Software developers insert logging statements in their source code to collect important runtime information of software systems.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |