探针配置
系统可以将一些高级配置动态发送给探针,详细的配置项以及说明参考如下。
// 描述对外提供的配置项
export type ReportConfigOptions = {
// 环境 默认: 无
env?: string
// 应用版本 默认: 无
release?: string
// 公共配置
common?: {
// 探针debug开关 默认: false
debug?: boolean
// session模式 默认: auto
sessionMode?: 'auto' | 'manual'
// 强制指定发送的数据协议 默认: 无
sendProtocol?: string
}
// 页面监控配置
page?: {
// 监控路由加载 默认: true
routerEnabled?: boolean
// 指定监控的路由模式 默认: auto
routerMode?: 'history' | 'hash' | 'auto'
// 路由加载操作默认等待时间, 单位ms 默认: 500
routerOperationDelay?: number
// 上传没有ajax的hash路由切换, 默认: false
uploadNoAjaxHashRouter?: boolean
// 加载过程中无ajax默认等待时间, 单位ms 默认: 500
pageLoadDelay?: number
// 是否使用lcp作为首屏 默认: true
lcpAsFs?: boolean
// 是否开启mutationObserver监控 默认: true
mutationEnabled?: boolean
// 不使用lcp计算首屏时, 设置首屏线上的图片资源 默认: 无
fsResources?: string[]
}
// ajax监控配置
ajax?: {
// ajax 监控总开关 默认: true
enabled?: boolean
// ajax xhr 监控开关 默认: true
xhrEnabled?: boolean
// ajax fetch 监控开关 默认: true
fetchEnabled?: boolean
// mPaas 监控开关 默认: true
mPaaSEnabled?: boolean
// 监控xhr的setRequestHeader接口 默认: true
hookXhrSetRequestHeader?: boolean
// Ajax黑名单 默认: 无
ignoreUrls?: string[]
}
// JS错误监控配置
jsError?: {
// 是否监控JS错误 默认: true
enabled?: boolean
// 是否上报空文件名的js错误 默认: false
uploadEmptyFileErrors?: boolean
// 是否对异步回调函数进行try catch 默认: false
catchAsyncCallback?: boolean
}
// 操作数据
operation?: {
// 用户操作自动监控开关 默认: true
enabled?: boolean
// 是否监控html标签上onclick, onsubmit属性绑定的回调 默认: true
inlineEventEnabled?: boolean
// 是否hook HTMLElement.prototype中的onXXX (onclick, onsubmit)属性 默认: true
onPropertyEnabled?: boolean
// 是否hook addEventListener/removeEventListener 默认: true
eventListenerEnabled?: boolean
// inline event 关联下级请求的阈值 单位ms 默认200
inlineEventThreshold?: number
// 是否开启自动跨页面事件 默认: true
crossPageEnabled?: boolean
// 操作下Ajax iframe 等元素的白名单 默认: 无
itemUrls?: string[]
// 操作下Ajax iframe 等元素的黑名单 默认: 无
ignoreItemUrls?: string[]
// 操作超时时间 单位ms 默认60000
timeout?: number
// 操作下元素挂载到ajax回调后的时间差阈值, 单位ms, 默认: 100
resourceAssociationThreshold?: number
// 操作下挂载到ajax的元素加载的最长等待时间, 单位ms, 默认10000
resourceAssociationWaitTime?: number
}
// apm配置
requestTracing?: {
// 是否主动添加apm请求头 默认false
autoAddApmHeader?: boolean
}
// 元素加载监控
resource?: {
// 是否监控iframe加载 默认: true
iframeEnabled?: boolean
}
// 配置刷新
configReload?: {
// 服务端获取配置开关 默认: true
enabled?: boolean
// 配置失效时长, 单位:分钟 默认10
expire?: number
}
// Web Vitals指标采集
webVitals?: {
// 总开关, 默认: true
enabled?: boolean
// webvitals lcp开关, 默认: true
lcpEnabled?: boolean
// webvitals fid开关, 默认: true
fidEnabled?: boolean
// webvitals cls开关, 默认: true
clsEnabled?: boolean
// webvitals ttfb开关, 默认: true
ttfbEnabled?: boolean
// webvitals fcp开关, 默认: true
fcpEnabled?: boolean
}
// 视频录制插件配置
replay?: {
// 隐私模式 standard(标准) / strict(严格), 默认为标准模式 standard
privacyMode?: string
// 遮罩配置
blockClass?: string[]
// 混淆配置
maskTextClass?: string[]
// 忽略输入配置
ignoreClass?: string[]
}
}