有时候,面对一个bug,左思右想就是无法理解为什么。 我就有过这样的经历,耗时整个一个晚上,后来还是放弃了。不得不在所有可能的点都加上日志,部署等待再次报错,真的很让人抓狂!
而实际上,解决一个bug的关键就是复现(reproduce),真正解决bug也许就是改动一两个字符的事情。
因此,如果能够知道出错函数被调用的时候的参数值,以及整个函数调用链条,那么对于复现和理解这个bug,就相当有用了。 今天,给大家安利一个很不错的Fundebug小程序bug监控插件,它可以监控函数的调用以及记录函数参数值。
Fundebug提供网站、微信小程序和小游戏的bug监控服务。我看了一下,前端监控和游戏监控做得也不错,有机会可以试用一下。 微信小程序插件的接入和接入百度统计一样简单,在此我就不费口舌了。 值得注意的是,Fundebug的官方文档有写到: 插件默认仅收集出错信息,保护隐私,收集systemInfo和userInfo需要开发者进行配置。 同理,如果想要监控函数调用和记录函数参数值,需要手动配置。
造个错看看效果,我在getPhoneNumber函数的第一行故意获取不存在的值:
因为参数e的值中根本没有number,所以就容易理解出错的原因了。 |