{"title":"一个完全自动调试配置错误的系统","authors":"A. Andrzejak, Matthias Iacsa","doi":"10.1109/ISSREW.2018.00010","DOIUrl":null,"url":null,"abstract":"Software applications routinely offer configuration settings to adapt them to specific deployment 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. 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. These include: (i) low intrusiveness (i.e. little runtime data/instrumentation), (ii) full automation of the diagnosis process, and (iii) fast computation of a diagnosis. In this work we propose ConfGuru, an approach and a tool which attempts to fulfill all three of these requirements. ConfGuru complements and improves upon ConfDoctor, our previous (semi-automated) approach for diagnosis of configuration errors. 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. Previously, these locations needed to be found manually, severely limiting adoption of ConfDoctor for new targets. Furthermore, due to algorithmic optimizations we can reduce the total time for computing a diagnosis to below a minute, and streamline the analysis process. Our evaluation shows that ConfGuru can diagnose configuration errors and extract ORPs from a variety of applications with an accuracy matching previous semi-automated approaches. Simultaneously, it offers fast adaptation to new target applications and well as full process automation, and has low response time. This makes ConfGuru suitable as a practical configuration error diagnosis tool or a service for real-world scenarios.","PeriodicalId":321448,"journal":{"name":"2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","volume":"4 5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"ConfGuru - A System for Fully Automated Debugging of Configuration Errors\",\"authors\":\"A. Andrzejak, Matthias Iacsa\",\"doi\":\"10.1109/ISSREW.2018.00010\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Software applications routinely offer configuration settings to adapt them to specific deployment 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. 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. These include: (i) low intrusiveness (i.e. little runtime data/instrumentation), (ii) full automation of the diagnosis process, and (iii) fast computation of a diagnosis. In this work we propose ConfGuru, an approach and a tool which attempts to fulfill all three of these requirements. ConfGuru complements and improves upon ConfDoctor, our previous (semi-automated) approach for diagnosis of configuration errors. 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. Previously, these locations needed to be found manually, severely limiting adoption of ConfDoctor for new targets. Furthermore, due to algorithmic optimizations we can reduce the total time for computing a diagnosis to below a minute, and streamline the analysis process. Our evaluation shows that ConfGuru can diagnose configuration errors and extract ORPs from a variety of applications with an accuracy matching previous semi-automated approaches. Simultaneously, it offers fast adaptation to new target applications and well as full process automation, and has low response time. This makes ConfGuru suitable as a practical configuration error diagnosis tool or a service for real-world scenarios.\",\"PeriodicalId\":321448,\"journal\":{\"name\":\"2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)\",\"volume\":\"4 5 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2018-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISSREW.2018.00010\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISSREW.2018.00010","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
ConfGuru - A System for Fully Automated Debugging of Configuration Errors
Software applications routinely offer configuration settings to adapt them to specific deployment 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. 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. These include: (i) low intrusiveness (i.e. little runtime data/instrumentation), (ii) full automation of the diagnosis process, and (iii) fast computation of a diagnosis. In this work we propose ConfGuru, an approach and a tool which attempts to fulfill all three of these requirements. ConfGuru complements and improves upon ConfDoctor, our previous (semi-automated) approach for diagnosis of configuration errors. 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. Previously, these locations needed to be found manually, severely limiting adoption of ConfDoctor for new targets. Furthermore, due to algorithmic optimizations we can reduce the total time for computing a diagnosis to below a minute, and streamline the analysis process. Our evaluation shows that ConfGuru can diagnose configuration errors and extract ORPs from a variety of applications with an accuracy matching previous semi-automated approaches. Simultaneously, it offers fast adaptation to new target applications and well as full process automation, and has low response time. This makes ConfGuru suitable as a practical configuration error diagnosis tool or a service for real-world scenarios.