Logger4u: Predicting debugging statements in the source code

Srishti Saini, Neetu Sardana, Sangeeta Lal
{"title":"Logger4u: Predicting debugging statements in the source code","authors":"Srishti Saini, Neetu Sardana, Sangeeta Lal","doi":"10.1109/IC3.2016.7880255","DOIUrl":null,"url":null,"abstract":"Software logging is an essential programming practice that saves important runtime information that can be used later by software developers for troubleshooting, debugging and monitoring the software. Even though software logging has numerous benefits this practice is underutilized because of lack of any formal guiding principles to developers for making strategic and efficient logging decisions. Logging should be optimized because too much logging can cause performance overheads; sparse logging can leave out vital information that might give clues to developers about the real issues. In absence of any formal guidelines developers rely solely on their domain knowledge and experience while making logging decisions. In order to lessen this effort of making decisions we have proposed a machine learning based framework, Logger4u for if-block logging prediction. We extract and use 28 distinctive static features from the source code helpful in making well informed logging decisions. We use Support Vector Machine (two variants, 1 linear and 1 RBF kernel based) models, Multilayer Perceptron with back propagation model and Random forest model in our work. Our approach gives encouraging results for if-block logging task. The accuracy achieved by the Linear SVM, MLP, Random Forest and kernel SVM are 73.05%, 74.62%, 79.84% and 81.22% respectively","PeriodicalId":294210,"journal":{"name":"2016 Ninth International Conference on Contemporary Computing (IC3)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 Ninth International Conference on Contemporary Computing (IC3)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IC3.2016.7880255","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

Software logging is an essential programming practice that saves important runtime information that can be used later by software developers for troubleshooting, debugging and monitoring the software. Even though software logging has numerous benefits this practice is underutilized because of lack of any formal guiding principles to developers for making strategic and efficient logging decisions. Logging should be optimized because too much logging can cause performance overheads; sparse logging can leave out vital information that might give clues to developers about the real issues. In absence of any formal guidelines developers rely solely on their domain knowledge and experience while making logging decisions. In order to lessen this effort of making decisions we have proposed a machine learning based framework, Logger4u for if-block logging prediction. We extract and use 28 distinctive static features from the source code helpful in making well informed logging decisions. We use Support Vector Machine (two variants, 1 linear and 1 RBF kernel based) models, Multilayer Perceptron with back propagation model and Random forest model in our work. Our approach gives encouraging results for if-block logging task. The accuracy achieved by the Linear SVM, MLP, Random Forest and kernel SVM are 73.05%, 74.62%, 79.84% and 81.22% respectively
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Logger4u:预测源代码中的调试语句
软件日志记录是一项基本的编程实践,它保存了重要的运行时信息,软件开发人员可以在以后的故障排除、调试和监视软件时使用这些信息。尽管软件日志记录有很多好处,但由于缺乏任何正式的指导原则来指导开发人员制定战略和有效的日志记录决策,因此这种做法没有得到充分利用。应该优化日志记录,因为过多的日志记录会导致性能开销;稀疏日志记录可能会遗漏重要信息,而这些信息可能会为开发人员提供有关实际问题的线索。在没有任何正式指导方针的情况下,开发人员在做出日志记录决策时完全依赖于他们的领域知识和经验。为了减少这种决策的工作量,我们提出了一个基于机器学习的框架,Logger4u用于if块日志预测。我们从源代码中提取并使用了28个不同的静态特性,这些特性有助于做出明智的日志记录决策。在我们的工作中,我们使用了支持向量机(两种变体,1种基于线性和1种基于RBF核)模型,带反向传播模型的多层感知器和随机森林模型。我们的方法为if块日志任务提供了令人鼓舞的结果。线性支持向量机、MLP、随机森林和核支持向量机的准确率分别为73.05%、74.62%、79.84%和81.22%
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Intuitionistic fuzzy ant colony optimization for course sequencing in E-learning JIIT-edu: An android application for college faculty Exploring academia industry linkage through co-authorship social networks Framework to extract context vectors from unstructured data using big data analytics Temperature and energy aware scheduling of heterogeneous processors
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1