Logging is a development practice that plays an important role in the operations and monitoring of complex systems. Developers place log statements in the source code and use log data to understand how the system behaves in production. Unfortunately, anticipating where to log during development is challenging. Previous studies show the feasibility of leveraging machine learning to recommend log placement despite the data imbalance since logging is a fraction of the overall code base. However, it remains unknown how those techniques apply to an industry setting, and little is known about the effect of imbalanced data and sampling techniques. In this paper, we study the log placement problem in the code base of Adyen, a large-scale payment company. We analyze 34,526 Java files and 309,527 methods that sum up +2M SLOC. We systematically measure the effectiveness of five models based on code metrics, explore the effect of sampling techniques, understand which features models consider to be relevant for the prediction, and evaluate whether we can exploit 388,086 methods from 29 Apache projects to learn where to log in an industry setting. Our best performing model achieves 79% of balanced accuracy, 81% of precision, 60% of recall. While sampling techniques improve recall, they penalize precision at a prohibitive cost. Experiments with open-source data yield under-performing models over Adyen's test set; nevertheless, they are useful due to their low rate of false positives. Our supporting scripts and tools are available to the community.


翻译:在复杂系统的操作和监测中,记录是一种开发做法,在复杂的系统的运作和监测中起着重要作用。 开发者在源代码中设置日志报表, 并使用日志数据来理解系统在生产过程中的运行方式。 不幸的是, 开发过程中预计到哪里是具有挑战性的 。 先前的研究显示, 利用机器学习来建议日志设置的可行性, 尽管数据不平衡, 伐木是整个代码基础的一部分。 但是, 这些技术如何适用于行业环境, 并且对不平衡的数据和取样技术的影响知之甚少。 在本文中, 我们研究了Adyen 的代码库中的日志设置问题, 是一个大型支付公司。 我们分析了34,526 Java 文档和 309,527 方法, 总结了 +2M SLOC 。 我们系统地测量了基于代码参数的五种模型的有效性, 探索了采样技术的效果, 了解哪些模型被认为与预测相关, 并且评估我们是否可以利用29 Apache项目中的388,086 方法来学习如何在行业环境中进行登录。 我们最好的执行模型的精确度达到79%, 精确度为81%,, 精确度, 精确度为60 % 的精确度,, 的精确度回回溯 。

0
下载
关闭预览

相关内容

如何构建你的推荐系统?这份21页ppt教程为你讲解
专知会员服务
64+阅读 · 2021年2月12日
【干货书】机器学习速查手册,135页pdf
专知会员服务
125+阅读 · 2020年11月20日
【KDD2020-Tutorial】自动推荐系统,Automated Recommendation System
Linux导论,Introduction to Linux,96页ppt
专知会员服务
78+阅读 · 2020年7月26日
商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
利用动态深度学习预测金融时间序列基于Python
量化投资与机器学习
18+阅读 · 2018年10月30日
LibRec 精选:连通知识图谱与推荐系统
LibRec智能推荐
3+阅读 · 2018年8月9日
【SIGIR2018】五篇对抗训练文章
专知
12+阅读 · 2018年7月9日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
【推荐】Kaggle机器学习数据集推荐
机器学习研究会
8+阅读 · 2017年11月19日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
0+阅读 · 2021年4月30日
Arxiv
9+阅读 · 2018年3月23日
VIP会员
相关VIP内容
如何构建你的推荐系统?这份21页ppt教程为你讲解
专知会员服务
64+阅读 · 2021年2月12日
【干货书】机器学习速查手册,135页pdf
专知会员服务
125+阅读 · 2020年11月20日
【KDD2020-Tutorial】自动推荐系统,Automated Recommendation System
Linux导论,Introduction to Linux,96页ppt
专知会员服务
78+阅读 · 2020年7月26日
商业数据分析,39页ppt
专知会员服务
160+阅读 · 2020年6月2日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习最新教程,17页pdf
专知会员服务
174+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
92+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
103+阅读 · 2019年10月9日
相关资讯
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
利用动态深度学习预测金融时间序列基于Python
量化投资与机器学习
18+阅读 · 2018年10月30日
LibRec 精选:连通知识图谱与推荐系统
LibRec智能推荐
3+阅读 · 2018年8月9日
【SIGIR2018】五篇对抗训练文章
专知
12+阅读 · 2018年7月9日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
【推荐】Kaggle机器学习数据集推荐
机器学习研究会
8+阅读 · 2017年11月19日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员