应用性能监控全链路版
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
sendInit | boolean | TRUE | 页面首次加载时,是否发送PV。如果业务手动发送PV,则可以设置为false。 |
routeMode | string | history | 选择自动监控路由的模式,手动指定当前站点的路由模式。
|
extractPid | (url: string) => string | - | 手动指定pid的生成规则,传入当前页面地址。返回值作为pid。 默认情况下,pid是自动获取当前页面url的pathname或者hash。如果自动生成的pid过于分散,不利于分析数据,可以配置这个函数,达到手动聚合的效果。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
ignoreErrors | (string | RegExp)[] | [] | 与error message匹配,忽略能匹配的JS错误。 |
onerror | boolean | true | 是否开启全局onerror监听。 如果业务本身是三方组件或者SDK,可以设置为false,表示不开启全局onerror监听,此时需要使用captureException手动上报JS错误。 |
onunhandledrejection | boolean | true | 是否开启全局onunhandledrejetion监听。 如果业务本身是三方组件或者SDK,可以设置为false,表示不开启全局onunhandlerejection监听,此时需要使用captureException手动上报JS错误。 |
captureGlobalAsync | boolean | false | 是否hook全局异步API。 异常API内的错误,比如setTimeout,因为自身限制抛到全局后往往没有完整堆栈,如果将此字段设置为true,那么可以获得更多信息,例如错误是从哪个API被抛出的。 |
dedupe | boolean | true | 当前发生的JS错误会和上一个错误比较,如果是同一个错误,是否不再上报。 为了避免循环上报,默认开启了去重。如果业务场景希望相同的错误能够重复上报,需要将此字段设置为false。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
maxBreadcrumbs | number | 20 | 内存里最多能记录多少条面包屑。 如果业务场景希望能够看到JS错误发生前更早的用户行为,可以将maxBreadcrumbs的取值设置的大一点。 |
dom | boolean | true | 是否监听click和keypress事件。 目前SDK只采集了xpath数据,如果业务对用户隐私仍有安全考虑,可以将dom配置为false,这样就不会采集用户行为。 |
onAddBreadcrumb | (b: Breadcrumb) => Breadcrumb | - | 添加面包屑的钩子函数。 常用于部分脱敏场景,或者补充更多上下文。 |
onMaxBreadcrumb | (bs: Breadcrumb[], maxBreadcrumbs: number) => Breadcrumb[] | - | 面包屑队列达到长度限制的钩子函数。 常用于一次性处理队列里的面包屑。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
ignoreUrls | (string | RegExp)[] | [] | 指定忽略的资源路径。如果匹配上,则不会上报对应的资源性能数据。 |
slowSessionThreshold | number | 4000 | 慢会话阈值,单位ms。 注意 如果会话在阈值时间内未加载完毕,那么即使配置了采样率,当前会话的静态资源性能数据也会全部上报,便于更好的排查页面性能异常。 如果不需要这个机制,可将该参数设置为Number.MAX_SAFE_INTEGER |
ignoreTypes | string[] | ['xmlhttprequest', 'fetch', 'beacon'] | 指定忽略的资源类型,对应匹配的字段为PerformanceResourceTiming.initiatorType,详情请参见PerformanceResourceTiming.initiatorType。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
ignoreUrls | (string | RegExp)[] | [] | 指定忽略的资源路径。如果匹配上,则不会上报对应的静态资源错误。 |
includeUrls | (string | RegExp)[] | [] | 指定命中的资源路径。如果没匹配上,则不会上报对应的静态资源错误。优先级高于ignoreUrls。 |
dedupe | boolean | true | 当前发生的资源错误会和上一个资源错误比较,如果是同一个错误,是否不再上报。 为了避免循环上报,默认开启了去重。如果业务场景希望相同的资源错误能够重复上报,需要将此字段设置为false。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
ignoreUrls | (string | RegExp)[] | [] | 指定忽略的请求路径,如果匹配上,则不会上报对应的请求数据。 |
collectBodyOnError | boolean | false | 错误时是否采集request body和response body。 默认情况下,SDK不会采集request body和response body。如果业务需要错误时采集这些数据便于更好的排查问题,需要将此字段设置为true。 注意 海外业务可能涉及安全风险,不建议开启此字段。 |
trace | { sampleRate?: number, origins: (string |RegExp)[] } | boolean | false | 配置前后端打通,如果请求路径命中配置的origins,则会在请求头里补充traceparent头和baggage头,便于应用性能监控串联整个链路,帮助排查请求耗时长的原因,具体定位请求性能瓶颈。详情请参见全链路场景接入。 |
extractUrl | (originalUrl: string) => string | - | 自定义请求路径的生成规则,传入原始路径,返回值作为新的请求路径。 常用于聚合RESTFUL请求路径。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
ignoreUrls | (string | RegExp)[] | [] | 指定忽略的请求路径,如果匹配上,则不会上报对应的请求数据。 如果需要手动忽略某些请求路径,可以配置该字段。 |
collectBodyOnError | boolean | false | 错误时是否采集request body。 默认情况下,SDK不会采集request body和response body。如果业务需要错误时采集这些数据便于更好的排查问题,需要将此字段设置为true。 注意 海外业务可能存在安全风险,不建议开启该字段。 |
trace | { sampleRate?: number, origins: (string |RegExp)[] } | boolean | false | 配置前后端打通,如果请求路径命中配置的origins,则会在请求头里补充traceparent头和baggage头,便于应用性能监控串联整个链路。 |
extractUrl (版本 >= 2.5.0 **** ) | (originalUrl: string) => string | - | 自定义请求路径的生成规则,传入原始路径,返回值作为新的请求路径。 常用于聚合RESTFUL请求路径。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
fp | boolean | true | fp指标开关,常用于不上报对应指标。 |
fcp | boolean | true | fcp指标开关,常用于不上报对应指标。 |
lcp | boolean | true | lcp指标开关,常用于不上报对应指标。 |
cls | boolean | true | cls指标开关,常用于不上报对应指标。 |
inp | boolean | true | inp指标开关,常用于不上报对应指标。 |
longtask | boolean | true | longtask指标开关,常用于不上报对应指标。 |
timing | boolean | true | timing指标开关,常用于不上报对应指标。 |
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
renderType | string | CSR | 指定当前页面的渲染类型。
|
字段 | 类型 | 默认值 | 说明 |
字段 | 类型 | 默认值 | 说明 |
rootSelector | string | body | dom打分的根节点,支持querySelector语法。 手动配置rootSelector为打分的根节点,准确度才更高。如果只想监控某个区域是否白屏,也可以配置为指定的区域节点。 |
autoDetect | boolean | true | 是否自动开启白屏监测。 如果不想开启自动监测,希望能够手动监测,可以将此字段设置为false,然后调用SDK提供的detectBlankScreen方法手动监测是否白屏。 |
threshold | number | 1.5 | dom打分的阈值。如果计算出来的分数小于阈值,则认为可能是白屏。 |
screenshot | boolean | true | 是否自动上报当前页面的截屏图片。 截屏一定程度上涉及安全隐私,但是能够帮助判定当前页面是否真的白屏。 说明 如果高度和宽度为0或者超过maximum canvas size,截屏图片base64会返回"data:,"。 |
mask | boolean | false | 对以下节点的内容进行数据脱敏:
@apmplus/web >= 2.0.0才支持配置此字段。 如果页面存在数据隐私,可以启动该字段,效果如下图所示: |
partialShot | boolean | false | 部分节点截图。@apmplus/web >= 2.0.0才支持配置此字段。 白屏时默认截屏为document.body,启动该字段后则只截屏传入的rootSelector。 |
quality | number | 0.1 | 截屏图片清晰度,取值范围:0 ~ 1。@apmplus/web >= 2.0.0才支持配置此字段。 如果您想获取更清晰的截屏信息,可以提高该字段取值。 说明 由于1:1截屏转码后的base64过大,默认已对原页面进行缩小。缩放公式:360 / window.innerWidth。 |