整体大致可以分四个阶段:信息采集、存储、分析、监控。采集阶段:收集异常日志,先在本地做一定的处理,采取一定的方案上报到服务器。存储阶段:后端接收前端上报的异常日志,经过一定处理,按照一定的存储方案存储。分析阶段:分为机器自动分析和人工分析。机器自动分析,通过预设的条件和算法,对存储的日志信息进行统计和筛选,发现问题,触发报警。人工分析,通过提供一个可视化的数据面板,让系统用户可以看到具体的日志数据,根据信息,发现异常问题根源。报警阶段:分为告警和预警。告警按照一定的级别自动报警,通过设定的渠道,按照一定的触发规则进行。预警则在异常发生前,提前预判,给出警告。性能监控:使用ResourceTimingAPI和PerformanceTimingAPI,可以计算许多重要的指标,比如页面性能统计的起始点时间、首屏时间等。异常监控:前端捕获异常分为全局捕获和局部捕获。局部捕获作为补充,对某些特殊情况进行捕获,但分散,不利于管理。所以,我会选择全局捕获的方式,即通过全局的接口,将捕获代码集中写在一个地方。具体在实现项目中,我应该会采用badjs-report,它重写了进行上报异常,无需编写任何捕获错误的代码。webfunny前端监控系统,数据概览功能可以:实时掌握项目的健康状态,PV/UV、报错、用户分布等。有效的前端监控和页面性能监控软件
webfunny前端监控项目可实现:五、记录用户的点击行为用户经过一系列复杂的行为操作之后(主要是点击行为),页面的样子和保存的数据都经过了很多变化,此时此刻常容易发生数据错乱的现象,导致前端开发者修复bug的时候无从入手,是复现用户行为中重要的一环。六、记录用户的页面截图即使前端开发者记录下所有的用户行为,但是前端工程师依然需要看到页面的样子,才能够分析出问题所在,那么前端开发者依然可以通过js截图来看看用户设备上的样子。前端监控平台搭建webfunny前端一体化埋点系统 ,纯私有化部。
前端监控通常情况下监控的内容可以分为三类:一,js错误。js错误又分大概四种:一是uncaughterror,这种错误通常情况下发生在我们的开发过程中。理论上不需要我们进行上报。二是jsruntimeerror,这种错误会触发事件,我们可以通过onerror事件,获取到相关的信息进行上报。三是资源错误,比如图片加载失败等,它也会触发error事件。四是unhandledregection错误,这种错误由promise触发,我们可以onunhandledrejection方法获取相关信息进行上报
搭建前端监控系统(三)静态资源加载监控篇如何监控前端静态资源加载情况:前端开发者可以根据报错是的,还是script标签。由于目前暂时关注对前端造成崩溃的错误,所以目前只监控了css,js文件加载错误的情况。首先,前端工程师要做的实时监控和预警,依然关联了7天以前同一时间端的数据,如果某个时间段出现错误量暴增,可以发出警告,及时制止。然后,前端开发者还需要知道更多详细的信息,如资源加载报错、资源失败列表等等,虽然前端线上环境并没有给前端开发者报出这么多的问题,但是可以看到,每天还是有很多的静态资源加载报错,有些是很重要的静态资源文件,是必然会导致页面渲染失败的,所以必须要解决建立合理的前端监控机制。现在前端比较主流的性能监控和错误监控的工具是什么?webfunny前端监控是一款开源的监控系统。
搭建前端监控系统(七)之用户细查篇一、如何贯穿用户的整个行为链路?这个很好理解,贯穿用户的整个行为链路,就需要一个单一的key来标识这个用户。比较简单的就是使用UserId了,在通过webfunny前端监控系统「用户细查」的功能模块,每个用户我都给他传入一个userId就可以了串联起来了。但是这种方式有一个很容易被忽略的弊端:如果这个项目获取userId速度比较慢,或者压根不会有userId,那么用户的行为记录是不是会出现缺失呢?或者根本就无法关联呢?那我们该如何规避这种问题呢?webfunny是如何做到的呢?为了规避以上提出的几点问题,webfunny通过设置内置id,来对所有的用户进行区分。然后再通过userId,将所有的内置id关联在一起,这样一来,只要在用户的生命周期过程中,传入一次userId,我们就可以关联上用户所有的行为记录了。内置ID生成规则的代码,感兴趣的前端同学可以到webfunny官网查看本篇博客原文。webfunny前端一体化埋点系统,支持一键添加看板,灵活创建分析模型。前端监控平台搭建
前端发生故障常见的原因就是新发布的版本存在 Bug,那么这种问题在监控平台中如何提供分析思路呢?有效的前端监控和页面性能监控软件
搭建前端监控系统(七)之用户细查篇:用户细查具体要分析哪些数据,更容易帮助我们定位前端问题呢说完用户基本信息和页面平均加载时间,下面就要来说接口耗时正态分布。接口耗时同样能够反馈出用户当时的网络状态,同时他也能反馈出服务端接口的状态。比如,页面平均耗时表现良好,接口耗时表现差,则能反映出,当时的后端服务状态不是很好。还有完整的用户行为记录,以上是用户行为中的基本信息,接下来要说的是用户的完整行为链路,通过将页面访问、接口请求、代码报错、自定义行为等,按照时间先后顺序串联起来,可以达到复现用户错误的目的。其中,接口请求记录,除了会记录接口耗时,还需要记录接口的返回值,这样能够更加明确的定位数据问题。以上说到的关于「用户细查」的详细功能和信息展示,前端程序员可以可以通过webfunny前端监控系统进行demo实操查看。在搭建前端系统利用各种手段来丰富「用户细查」,将用户的行为记录下来,复现用户当时的问题便不再是那么困难的事情。这对开发者来说,无疑是提高了解决问题的效率。webfunny前端监控致力于解决前端监控的问题,提高前端的性能。有效的前端监控和页面性能监控软件
上海观纵科技有限公司位于上海市奉贤区望园南路1288弄80号1904、1909室。观纵科技致力于为客户提供良好的webfunny前端监控,webfunny前端埋点,全链路应用性能监控,Argus-IT运维监控,一切以用户需求为中心,深受广大客户的欢迎。公司注重以质量为中心,以服务为理念,秉持诚信为本的理念,打造传媒、广电良好品牌。观纵科技凭借创新的产品、专业的服务、众多的成功案例积累起来的声誉和口碑,让企业发展再上新高。