如何解决前端线上问题?如果你是一位前端工程师,那你一定不止一次去解决一些顽固的线上问题,你也曾想方设法复现用户的bug,结果可能都不太理想。怎样定位前端线上问题,一直以来,都是很头疼的问题,因为它发生于用户的一系列操作之后。错误的原因可能源于机型,网络环境,复杂的操作行为等等,在我们想要去解决的时候很难复现出来,自然也就无法解决。身为一名前端工程师,我每天都要面临很多线上的问题,一时间让我焦头烂额。虽然公司也有其他的监控系统,但是每次解决问题都需要辗转于各种监控系统之间,亦是疲惫不堪。所以,一怒之下,基于自己在前端线上监控工作时的这些痛点,我便为自己(前端工程师)量身定做了这样一款监控系统:webfunny前端监控,为了让监控项目更加完善、现在埋点系统也推出来,希望能对前端工程师们在解决线上问题,提供一个好用的前端监控系统平台。webfunny前端一体化埋点系统,可按项目设定不同的模型看板,设定人员权限,满足多种数据分析需求。前端监控和js性能监控系统搭建
搭建前端监控系统(三)静态资源加载监控篇如何监控前端静态资源加载情况:前端开发者可以根据报错是的,还是script标签。由于目前暂时关注对前端造成崩溃的错误,所以目前只监控了css,js文件加载错误的情况。首先,前端工程师要做的实时监控和预警,依然关联了7天以前同一时间端的数据,如果某个时间段出现错误量暴增,可以发出警告,及时制止。然后,前端开发者还需要知道更多详细的信息,如资源加载报错、资源失败列表等等,虽然前端线上环境并没有给前端开发者报出这么多的问题,但是可以看到,每天还是有很多的静态资源加载报错,有些是很重要的静态资源文件,是必然会导致页面渲染失败的,所以必须要解决建立合理的前端监控机制。有效的前端监控和js稳定性监控系统webfunny前端监控系统,自定义埋点功能,如果是纯前端的业务打点需求,就无需花费后端的人力和物力了。
webfunny前端监控项目可实现:三、记录用户的访问行为有些错误是前端页面经过复杂的跳转、回退之后才发生的,就算测试人员也很难测试出这种问题,因为线上的用户的任何行为都有可能出现。往往我们知道的只是用户在后一次停留的页面发生了错误。如此,我们在前端监控时记录下用户的跳转日志,就能够复现出用户的行为,从而复现BUG。四、记录用户的接口行为接口请求是一个前端项目涉及比较多的行为,接口的异常包括:后台报错,响应超时,网络环境较差,重复接口数据覆盖等等。这些错误也只有在真实的用户环境中才会发生,是典型的前端线上问题。我们可以通过建立前端监控来记录下用户的请求时间,参数,响应时间,响应状态等等,可以具体分析出来接口对页面的影响。
搭建前端监控系统(四)接口请求异常监控篇如何监控前端接口请求:1、如何监控ajax请求如果作为前端开发者你用的jquery、zepto、或者自己封装的ajax方法,就可以用如下的方法进行监控排查。前端开发者在监控XMLHttpRequest对象的两个事件loadstart,loadend。但是监控的结果并不是像我们想象的那么容易理解,我们先看下ajaxLoadStart,ajaxLoadEnd的回调方法。一个页面上会有很多个请求,当一个页面发出多个请求的时候,ajaxLoadStart事件被监控到,但是却无法区分出来到底发送的是哪个请求,只返回了一个内容超多的事件对象,而且事件对象的内容几乎完全一样。当ajaxLoadEnd事件被监控到的时候,也会返回一个内容超多的时间对象,这个时候事件对象里包含了接口请求的所有信息。幸运的是,两个对象是同一个引用,也就意味着,ajaxLoadStart和ajaxLoadEnd事件被捕获的时候,他们作用的是用一个对象。那前端开发者就有办法分析出来了。通过监控来对线上的流量数据、用户量统计、页面访问趋势、用户活跃量趋势等等指标有一个清晰直观的了解。
前端异常的问题定位出来是用户网络问题导致,网络环境是会影响接口的效率。前端程序员也许会说,如果网络环境不好,我们只要等待足够长的时间,接口啥的总是能够加载出来的,技术可以等、用户是等不了的,线上用户使用app的时候都会有个极限等待时间。也就是说用户等待到一定时间,就会变得不耐烦了,就会关掉你的程序流失用户。所以,我们一定要在到达用户极限等待时间之前,给用户一个反馈,这就是为什么我在设计webfunny前端监控时,在这个部分给前端接口加了一个超时时间。如果网络环境评估良好,而接口请求耗时又很长,这时候你就可以去找后端算账了。webfunny通过对线上项目的实时分析,能让前端工程师对线上状况有非常直观的了解。前端监控和前端行为分析系统开源
webfunny前端监控在错误分析功能上,可以准确定位代码问题所在位置。前端监控和js性能监控系统搭建
前端技术优化方案,需要有着陆点,以下就是前端优化比较基本的两个着陆点。1.白屏时间:输入网址后回车-浏览器出现的元素。2.首屏时间:输入网址后回车-浏览器渲染完成耗时的过程包括:DNS查询、TCP连接、HTTP请求响应、HTML解析。减少DNS查询(时间极端,几乎可以忽略)、减少TCP连接次数(适量保持keep-alive,负载均衡)、减少HTTP请求数(合并静态资源请求,js合并,雪碧图,小图片转base64等等;合并接口请求)、压缩资源体积(webpack打包压缩静态资源,nginx开启gzip做合适程度的压缩)、缓存静态资源(使用CDN,静态资源开启cache-control,Nginx优化缓存分配,懒加载)、HTML解析(尽量减少首屏的内容,可以异步展现;或者使用ssr服务器渲染等)前端技术优化确实是老生常谈的问题。前端工程师不仅需要关注优化性能,还需要监控前端项目的健康状态,那么如何监控线上应用呢?webfunny前端监控系统,只需要简单几步就可以搭建一套属于自己的前端监控系统,前端工程师可以尝试通过webfunny来体验。前端监控和js性能监控系统搭建
上海观纵科技有限公司致力于传媒、广电,是一家服务型的公司。公司业务涵盖webfunny前端监控,webfunny前端埋点,全链路应用性能监控,Argus-IT运维监控等,价格合理,品质有保证。公司将不断增强企业重点竞争力,努力学习行业知识,遵守行业规范,植根于传媒、广电行业的发展。观纵科技凭借创新的产品、专业的服务、众多的成功案例积累起来的声誉和口碑,让企业发展再上新高。