前端监控

指标

mindmap  基础数据类型    基本日志数据      唯一键值traceId      日志类型type      日志产生时间createAt      日志最后更新时间updatedAt    浏览器信息      浏览器UserAgent      浏览器类型BrowserType    页面信息      页面ID      页面地址URL      ?页面标题    用户信息      指纹ID      用户ID      ?用户名      ?用户邮箱    业务信息      业务标识appld      ?业务名称appName      客户端类型clientType      日志类型level
mindmap  root((以代码维度的字段))    异常信息,data      代码异常        通用字段          代码堆栈,stack      网络请求        通用字段          请求耗时,elapsedTime          请求方法,method          请求类型,httpType          API地址,url          请求参数,body          响应状态,status      自定义日志        通用字段          打标签,tag      PVUV日志        通用字段          路由地址,route      Promise日志        通用字段      资源日志        通用字段    通用字段      问题ID,dataId      日志名称,name      问题级别,level      问题信息,message      问题发生事件,time      问题类型,type    页面性能,perf      日志id      指标名称,name      指标值,value      当前值和上次获取值的差值,delta      判断性能级别,rating    操作行为,breadcrumbs      行为名称,name      行为级别,level      行为类型,type      行为分类,category      发生时间,time

WebVitals

指标体验好需要改进体验差
LCP<2.5s2.5s LCP <4s>4s
FID<100ms100ms < FID < 300ms>300ms
CLS<0.10.1 < CLS < 0.25>0.25
FCP<1.8s1.8s < FCP < 3s>3s
INP<200ms200ms < INP < 500ms>500ms
TTFB<800ms800ms< TTFB< 1800ms>1800ms
TTFB    |             FP|                  FCP|                         LCP|

TTFB 最早发生,FP (First Paint) 紧接着 TTFB 之后发生,FCP 紧接着 FP 之后发生,LCP 紧接着 LCP 之后发生

接口异常监听

通过拦截 ajax 请求接口,来实现如下目标:

资源脚本异常监听

通过全局的 onerror 监听或者框架提供的全局 errorHandle,实现全局的资源加载异常或脚本异常监听

全局操作监听

通过全局的 onxx 监听,实现全局的点击、键盘等事件监听,包括:

数据上报方式