搭建前端监控系统(七)之用户细查篇:用户细查具体要分析哪些数据,更容易帮助我们定位前端问题呢说完用户基本信息和页面平均加载时间,下面就要来说接口耗时正态分布。接口耗时同样能够反馈出用户当时的网络状态,同时他也能反馈出服务端接口的状态。比如,页面平均耗时表现良好,接口耗时表现差,则能反映出,当时的后端服务状态不是很好。还有完整的用户行为记录,以上是用户行为中的基本信息,接下来要说的是用户的完整行为链路,通过将页面访问、接口请求、代码报错、自定义行为等,按照时间先后顺序串联起来,可以达到复现用户错误的目的。其中,接口请求记录,除了会记录接口耗时,还需要记录接口的返回值,这样能够更加明确的定位数据问...
搭建前端监控系统(五)消息队列处理并发:1、增加日志上传的时间间隔前端程序员应该都知道,日志上传的时间间隔越长,用户在这个间隔内离开的几率就会越大,日志的漏传量就会增加,然后会导致日志的准确度降低。因为我们的探针是安插在浏览器内的,用户随时都有可能关掉,所以,理论上讲间隔越短越好,但这并不现实。所以这个需要在服务器的承受能力和日志的准确率之间做个权衡。由具体情况而定2、移除探针代码里冗余的参数,缩短参数名字的长度另外一点,每台服务器的硬盘有限,带宽有限,如果参数名字太长,参数内容冗余,对服务器的硬盘和带宽都是一种极大的浪费。虽然每条日志都不起眼,但是日志起量了以后,就是会是一笔非常庞大的开销。...
前端出现异常报错的时候,有前端帮后台背锅之前怎么快速优雅的"甩锅"?在做前端程序员的时候,我之前所在的公司后台可是有着完善的监控系统,他们都觉得自己的代码和监控都做得非常完善,但是前端的我做了监控结果后来看,事实并非如此。当然,你也许会说这是开发和测试不专业,这么明显的问题都没有发现,但是,我只能用一句话来解释:人非圣贤。与其追究是谁的责任,不如想办法解决问题。将线上的损失减少到较低的影响。如果作为前端你对项目做了监控,并且能实时监控到,出现问题的时候把报错截图发给后台小伙伴,你还需要跟他们争论是谁的锅吗?当然,如果是前端程序员自己的锅,那还是赶紧偷偷修改掉吧,在建立webfunny前端监控时...
搭建前端监控系统(七)之用户细查篇二、利用多个维度来准确定位到具体的用户上面提到了用户的userId获取速度可能比较慢,或者根本不会有,那我们该怎么去把用户的行为记录查出来呢。其实,我们可以通过用户行为产生的时间,用户的ip地址,地理位置以及访问设备等信息的佐证,来找到具体的用户,在webfunny前端监控系统里,这块儿会详细展示出来。前端程序员通过其他维度的信息,可以锁定一些用户,即使在没有userId的情况下,我们依然可以通过内置ID查到用户的行为记录,帮助我们排查问题。其中如何通过IP地址查询地理位置,建议前端程序员可以使用node-ip2region这个库进行查询,挺好用的。webfu...
前端程序员如何明确定位、排查前端生产问题?二、分析错误详情通过webfunny前端监控系统,我们可以把线上的错误日志统计出来了,那如何解析这些错误日志呢。比如:解析出用户的机型,版本,系统平台,影响范围,以及具体的错误位置,从而提高前端工程师解决问题的效率。window.onerror方法能够利用的功能都已经用的差不多了,但是它真的可以帮我们定位和解决所有前端线上的问题吗?线上能够修复的问题,前端工程师肯定是遇到都在尽量修复,但是前端线上的问题频发。当客服反馈一个问题,你发现没有测试机型,无法复现用户错误的时候,让你来修复这个问题,前端只能两眼一抹黑无能为力。所以前端监控的建设很有必要性。we...
前端程序员如何定位前端线上问题?其实要想及时定位和解决前端线上问题,离不开对项目做好监控。那前端程序员想要搭建前端监控,要怎么做呢,介绍一款非常好用的前端业务日志监控工具—Webfunny,只需要简单几步,你就可以搭建一套属于自己的前端监控系统啦。对前端程序员来说这个webfunny前端监控工具很好上手,我们也已经服务了很多企业,他们在采购后搭建部署上非常快捷。关于Webfunny前端监控工具是一款轻量级前端异常监控和前端性能监控系统,致力于帮助前端工程师定位并解决各种线上问题,确保项目健康良好的运行。支持千万级别日PV量,能够满足用户的各种场景需求。同时,针对不同企业和用户,提供一对一的定制...
目前市面上有不少前端监控系统,主要给大家推荐github4.2Kstar的开源监控系统——Webfunny前端监控系统,webfunny监控的主要特点:1、轻量级:可以随时部署在任何地方,支持ESC部署和Docker部署,非常快捷方便;2、功能完善:不限制应用的流量、自定义日志存储时间,能够适应更多高并发的场景;3、针对性强:针对前端使用场景研发,辅助前端开发,容易上手;4、无风险:所有监控数据都可以回流,监控日志都存储在你们自己的数据库内,不依赖任何第三方;5、费用低:只需要花费少量的赞助,便可以使用一套完整的私有化部署系统;6、提供一对一定制化服务。webfunny通过对线上项目的实时分析...
搭建前端监控系统(三)静态资源加载监控篇如何监控前端静态资源加载情况:前端开发者可以根据报错是的,还是script标签。由于目前暂时关注对前端造成崩溃的错误,所以目前只监控了css,js文件加载错误的情况。首先,前端工程师要做的实时监控和预警,依然关联了7天以前同一时间端的数据,如果某个时间段出现错误量暴增,可以发出警告,及时制止。然后,前端开发者还需要知道更多详细的信息,如资源加载报错、资源失败列表等等,虽然前端线上环境并没有给前端开发者报出这么多的问题,但是可以看到,每天还是有很多的静态资源加载报错,有些是很重要的静态资源文件,是必然会导致页面渲染失败的,所以必须要解决建立合理...
这是搭建前端监控系统的第二章,主要是介绍如何统计js报错,跟着webfunny前端监控项目的开发者一步步操作,你也能搭建出一个属于自己的前端监控系统。前端程序员可以移步线上:webfunny前端监控系统,对于前端应用来说,Js错误的发生直接影响前端应用的质量。对前端异常的监控是整个前端监控系统中的一个重要环节。前端异常包含很多种情况:1.js编译时异常(开发阶段就能排除)2.js运行时异常;3.加载静态资源异常(路径写错、资源服务器异常、CDN异常、跨域)4.接口请求异常等。这一篇我们只介绍Js运行时异常。webfunny能够轻松完成打点业务需求。webfunny还对埋点数据进行了漏斗分析,清...
前端出现异常的时候,前端程序员如果发现是CDN报错的原因,这个时候为了避免出现替第三方公司背锅,因为做前端的都知道,这是很憋屈的一种线上Bug,还是替第三方公司背锅。如果是第三方的东西出了问题,上面领导永远都只怀疑是你的代码有bug,如果你没有有力的证据,即使你已经排查过了,领导也只会说一句“你再去好好排查一下你自己的代码”,这时候前端可能会很委屈、有一键盘呼他脸上的冲动。因为之前工作的时候出现过这种背锅的事情,所以在webfunny前端监控系统里加入了对静态资源的监控功能。前不久,阿里部分区域的出现了5分钟无法访问的情况。我们线上群里顿时就炸开了锅,让我赶紧排查问题。我打开了错误监控,发现只...
webfunny前端监控项目可实现:七、分析用户的场外信息当用户所有的行为都被前端开发者掌握之后,前端能够复现出用户的行为,甚至能够复现出用户的问题,也许还需要一些场外信息才能准确定位问题,比如,用户的机型,地理位置,系统版本,当时的网络环境(这个不准确,我做webfunny前端项目场景测试时,是依据用户当时初次加载页面的时间来判断,只能作为参考依据)前端线上问题产生的原因五花八门,只有把日志做全了,才能够准确的定位和解决前端问题、作好前端项目的监控。这是webfunny前端监控项目开发者排查线上问题的经验和实战,分享给所有的前端工程师们参考,当然理论有了,作为前端开发技术同学还是实操效果更好...
搭建前端监控系统(六)之接口性能分析篇,如何监控前端接口的性能。一、接口耗时分段分析在webfunny前端监控系统上,我们的开发者将前端接口耗时划分为5个分段:<1秒、1-5秒、5-10秒、10-30秒、>30秒10秒是用户可忍受等待时间的临界值,如果一个接口超过10秒还在loading,用户极有可能杀掉程序。所以一般情况下,大于10秒的接口都可以认为是超时接口(特殊情况例外)。即使真的有这种情况,也应该让后端小伙伴把这个接口做成异步接口,在10秒内给用户一个反馈。为什么要把耗时分段进行分析呢,因为大部分时候,前端工程师通常要关心就是10-30秒这个段位,大部分超时的接口都会在这里发生。这种超...
前端出现异常只有一种情况是需要前端程序员自己背锅的,那就是前端代码错误。别人的锅都可以甩出去,甩锅给后端、三方公司、网络问题等等,但是剩下前端自己代码问题,这种就是前端的锅了。正常情况下,线上前端代码出现错误的可能行比较小,因为经过细心的测试,前端代码错误是很容暴露出来的。另外,前端自己的锅,咱自己应该清楚。加上我在设计webfunny前端监控系统的时候,做了一个非常细致的错误分析,针对前端问题解决起来也是得心应手。造成线上问题的因素有很多,代码错误是其中一个很小的因素。通过webfunny前端监控系统可以在这众多繁杂的因素之中找到真正原因,这个监控系统并不是帮你解决所有问题,而是能够告诉你那...
搭建前端监控系统(四)接口请求异常监控篇如何监控前端接口请求报错?可能有前端程序员会认为接口的报错应该由后台来关注,统计,并修复。确实如此,而且后台服务有了很多成熟完善的统计工具,完全能够应对大部分的异常情况,那么为什么还需要前端对接口请求进行监控呢。原因很简单,因为前端是bug的首要发现位置,在前端程序员帮后台背锅之前怎么快速把锅甩出去呢?这时候,划重点每个前端程序员都需要有一个接口的监控系统,这样出现问题可以随时定位)webfunny一键搭建前端监控系统,实时了解线上应用健康情况!黑龙江是什么前端监控认真负责搭建前端监控系统(七)之用户细查篇前端程序员都知道搭建监控系统,主要涉及几大指标,...
搭建前端监控系统(七)之用户细查篇二、利用多个维度来准确定位到具体的用户上面提到了用户的userId获取速度可能比较慢,或者根本不会有,那我们该怎么去把用户的行为记录查出来呢。其实,我们可以通过用户行为产生的时间,用户的ip地址,地理位置以及访问设备等信息的佐证,来找到具体的用户,在webfunny前端监控系统里,这块儿会详细展示出来。前端程序员通过其他维度的信息,可以锁定一些用户,即使在没有userId的情况下,我们依然可以通过内置ID查到用户的行为记录,帮助我们排查问题。其中如何通过IP地址查询地理位置,建议前端程序员可以使用node-ip2region这个库进行查询,挺好用的。webfu...
前端出现异常的时候,前端程序员如何快速甩锅?特别是前端程序员发现前端报错的原因是网络问题,虽然很多时候这种报错问题是由用户的网络问题导致的。网络是跟用户体验密切相关的因素,但却是开发小伙伴无能为力的因素,因为这取决于用户当时的网络环境是否良好。如果我们能够判断出用户当时的网络情况,对我们排查问题也是很有帮助的。首先,网络环境对页面初次加载影响比较明显。理论上讲,前端是不方便把用户当时的网络情况计算出来,但是我们可以侧面评估出用户当时的网络环境。虽然我们测不出来网速,但是我们可以计算出用户初次加载页面的时间,以此来评估用户的网络环境。webfunny前端监控系统,自定义埋点功能,更加灵活的自定义...
前端出现异常的时候,前端程序员如何快速甩锅?特别是前端程序员发现前端报错的原因是接口报错,这时候如何把这个前端报错的问题优雅的甩给后端程序员。可能有些前端程序员会认为接口的报错应该由后台来关注,统计,并修复。确实如此,而且后台服务有了很多成熟完善的统计工具,完全能够应对大部分的异常情况,那么为什么还需要前端来解决接口问题呢。原因很简单,因为前端是bug的重要发现位置,报错发生时肯定会先找到前端程序员来解决,那么在前端帮后台背锅之前怎么快速优雅的"甩锅"呢?大家有没有想过,如果前端程序员都对自己的项目做了系统的监控、报错都能实时反馈展示,就不用担心甩锅的问题了。webfunny前端监控工具,就是...
webfunny前端监控系统—纯私有化部署,可实现的功能介绍,前端监控第二个功能模块、Js报错维度分析:1.Javascript错误的分类与聚合:主要包括每天Js报错量汇总、每天自定义异常量汇总、每天错误总量、不同平台(ios、android、PC)发生数量、影响人数。2.Javascript错误详情解析:主要包括每小时的报错趋势、每分钟的报错趋势(准确定位发生时间)、压缩代码定位、sourceMap解析源码定位。前端应用需要被监控,因为前端是用户体验和项目问题的主要发源地,我们只有掌握实时的信息,才能够更准确、更及时的发现和定位线上问题。webfunny前端监控系统,只需简单几步,前端程序员...
webfunny前端监控系统—纯私有化部署,可实现的功能介绍:前端监控功能一、PV/UV维度分析:1.pv/uv维度分析:主要包括了用户量、新用户量、IP数量、7天留存变化。2.使用体验维度:单个用户访问页面频次、卸载重装APP频次。3.健康状况维度:主要包括Js报错趋势、自定义异常发生趋势、静态资源加载报错趋势、接口请求报错报错趋势。4.健康评分:作为前端工程师在设计webfunny前端项目时,我增加了给每个错误的加了不同的权重,通过报错率给每个应用打分。webfunny前端监控系统,自定义埋点功能,更加灵活的自定义埋点,满足更多定制化的业务场景。黑龙江品质前端监控内容前端监控系统搭建第一步...
针对webfunny整套前端监控监控系统,前端工程师会疑问的问题解答:webfunny监控这么多东西,不会影响页面的性能,首先webfunny这套监控系统我们自己和试用购买webfunny的前端工程师已经使用很久了,目前没有遇到性能上的问题。当然,也有极个别的小伙伴反馈说,拖慢了系统。所以我们增加了设置功能,在使用webfunny前端监控时,你可以去除掉大部分的监控功能。webfunny前端监控居然用node做日志服务,并发量高了可以扛得住。因为node处理并发有着天然的优势,目前,如果是单点部署,可以支持10万+的日活量,如果使用多点部署,效果更佳哦。我们已经积极开发出能够支持百万以上日活量...
webfunny前端监控项目可实现:三、记录用户的访问行为有些错误是前端页面经过复杂的跳转、回退之后才发生的,就算测试人员也很难测试出这种问题,因为线上的用户的任何行为都有可能出现。往往我们知道的只是用户在后一次停留的页面发生了错误。如此,我们在前端监控时记录下用户的跳转日志,就能够复现出用户的行为,从而复现BUG。四、记录用户的接口行为接口请求是一个前端项目涉及比较多的行为,接口的异常包括:后台报错,响应超时,网络环境较差,重复接口数据覆盖等等。这些错误也只有在真实的用户环境中才会发生,是典型的前端线上问题。我们可以通过建立前端监控来记录下用户的请求时间,参数,响应时间,响应状态等等,可以具...
webfunny整套前端监控监控系统的流程是比较简单的:手机端-用户访问页面会产生错误日志、产生的日志会存入浏览器缓存,浏览器本地缓存会定时向Node服务推送日志信息,NodeJs日志服务会分类处理后,存入到mysql数据库中,数据可视化系统会展示日志数据。因为整套前端监控流程比较简单,有些前端工程师可能会有疑问,比如:1.webfunny监控这么多东西,会不会影响页面的性能啊?2.webfunny前端监控居然用node做日志服务,并发量高了能扛得住吗?3.webfunny前端监控用mysql数据库来存数据库,不怕卡死吗?等一些关于webfunny前端监控系统的各种问题。Webfunny专注于...
前端监控系统搭建第二步之阿里云购买域名购买阿里云服务器之后,就获得了这个服务器对外的公网IP,通过这个IP和端口,我们就可以访问这台服务器上的服务。可是无论上传还是访问,总是通过ip有点太不专业了,为了安全,而且很多网站是禁止ip直接访问的,所以,我们需要有一个域名。申请域名:这个在阿里云上操作很简单,当然越好的域名就越贵。这里边有一点需要注意,以后有可能给这个域名购买https证书,阿里云上的审核比较严格,有些是无法审核通过的,所以可以先尝试买一个简单的,测试一下,省得花冤枉钱。域名需要经过购买,备案,准备资料,上传资料,审核,一系列步骤之后,才可以真正使用(步骤繁琐,建议要有耐心)。域名审...
前端监控系统搭建第一步之购买阿里云服务器(本地部署类似)对于之前没有搞过服务器的前端来说,折腾一个能运行的服务器,还真是费了不少周折。服务器类型:入门级(共享)2vCPU、4GB内存、带宽2M(个人建议2vCpu、2GB内存足矣)安装运行环境:系统:Ubuntu1664位硬盘40G(默认)安装nvm安装使用教程,运行前端项目可能会需要切换node版本,建议提前安装。安装PM2安装使用教程,运行node服务应该都知道这个,它是个node服务进程管理器。安装JDK(Java运行环境),安装tomcat,并配置环境变量,这个网上教程一大堆。安装Jenkins安装教程,下载Jenkins的war包,在...
webfunny整套前端监控监控系统的流程是比较简单的:手机端-用户访问页面会产生错误日志、产生的日志会存入浏览器缓存,浏览器本地缓存会定时向Node服务推送日志信息,NodeJs日志服务会分类处理后,存入到mysql数据库中,数据可视化系统会展示日志数据。因为整套前端监控流程比较简单,有些前端工程师可能会有疑问,比如:1.webfunny监控这么多东西,会不会影响页面的性能啊?2.webfunny前端监控居然用node做日志服务,并发量高了能扛得住吗?3.webfunny前端监控用mysql数据库来存数据库,不怕卡死吗?等一些关于webfunny前端监控系统的各种问题。webfunny线上调...
搭建前端监控系统(四)接口请求异常监控篇如何监控前端接口请求:1、如何监控ajax请求如果作为前端开发者你用的jquery、zepto、或者自己封装的ajax方法,就可以用如下的方法进行监控排查。前端开发者在监控XMLHttpRequest对象的两个事件loadstart,loadend。但是监控的结果并不是像我们想象的那么容易理解,我们先看下ajaxLoadStart,ajaxLoadEnd的回调方法。一个页面上会有很多个请求,当一个页面发出多个请求的时候,ajaxLoadStart事件被监控到,但是却无法区分出来到底发送的是哪个请求,只返回了一个内容超多的事件对象,而且事件对象的内容几乎完...
webfunny前端监控系统—纯私有化部署,可实现的功能介绍,前端监控第三个功能模块、用户细查维度:webfunny前端监控这块的功能可以让前端工程师查看单个用户的具体行为,前端工程师可以清楚地知道,某个用户,在某个时间,访问了某个页面,点击了某个按钮,发送了某个请求,从而产生了某个错误,一目了然。同时webfunny前端监控系统还对这个用户的各种外部环境做了分析,让工程师追踪用户问题易如反掌。查询用户具体的行为记录:主要包括一个月内每天的访问记录、用户浏览、点击、请求、报错、超时等等,前端工程师可以清晰的知道用户在页面上的行为,从而复现用户的bug。设备分析:主要包括设备、系统、IP、地理位...
前端监控流程:监控错误->搜集错误->存储错误->分析错误->错误报警->定位错误->解决错误首先,我们应该对Js报错情况有个大致的了解,这样才能够及时的了解前端项目的健康状况。所以我们需要分析出一些必要的数据。如:一段时间内,应用JS报错的走势(chart图表)、JS错误发生率、JS错误在PC端发生的概率、JS错误在IOS端发生的概率、JS错误在Android端发生的概率,以及JS错误的归类。然后,我们再去其中的Js错误进行详细的分析,辅助我们排查出错的位置和发生错误的原因。如:JS错误类型、JS错误信息、JS错误堆栈、JS错误发生的位置以及相关位置的代码;JS错误发生的几率、浏览器的类型,...
前端监控系统搭建第三步之购买CA证书或者说是HTTPS证书现在很多网站都是走HTTPS安全协议,如果我们的服务器不支持安全协议,那么日志是无法被上传到我们的服务器上的。所以我们也需要给我们的服务器配置安全证书。有多种方式获取证书,有不收费的,有收费的,我的webfunny前端监控项目用的是阿里云上未收费版本一年的。PS:https证书可能也需要折腾一些时间,需要有耐心。这样,我们的阿里云服务器部署环境就算搭建完成了,可以开始写前端日志的监控代码了。webfunny前端监控系统,数据概览功能可以:实时掌握项目的健康状态,PV/UV、报错、用户分布等。广西品质前端监控常见问题webfunny整套前...
webfunny前端监控项目可实现:三、记录用户的访问行为有些错误是前端页面经过复杂的跳转、回退之后才发生的,就算测试人员也很难测试出这种问题,因为线上的用户的任何行为都有可能出现。往往我们知道的只是用户在后一次停留的页面发生了错误。如此,我们在前端监控时记录下用户的跳转日志,就能够复现出用户的行为,从而复现BUG。四、记录用户的接口行为接口请求是一个前端项目涉及比较多的行为,接口的异常包括:后台报错,响应超时,网络环境较差,重复接口数据覆盖等等。这些错误也只有在真实的用户环境中才会发生,是典型的前端线上问题。我们可以通过建立前端监控来记录下用户的请求时间,参数,响应时间,响应状态等等,可以具...