SDK 接入

SDK 配置

配置 projectKey、apiBase、debug 和 autoTrack,处理多环境与 CSP。

SDK 配置优先使用 Script 的 data-* 属性;需要在脚本加载前动态注入配置时,可以使用全局 TraceVistaConfig。少数高级接入场景也可以传入 TraceVista.init()。

配置项

配置Script 属性类型默认值说明
projectKeydata-project-keystring空必填,标识接收数据的监控网站
apiBasedata-api-basestringSDK 脚本域名自定义监控接口基础地址
debugdata-debugbooleanfalse在浏览器控制台输出调试信息
autoTrackdata-auto-trackbooleantrue自动记录页面访问

调试模式

<script
    defer
    src="https://apm.noxussj.top/monitor.min.js"
    data-project-key="mk_your_project_key"
    data-debug="true">
</script>

调试日志以 [TraceVista] 开头,会显示启动上下文和上报失败状态。定位完成后建议在生产环境关闭,避免控制台噪音。

关闭自动访问追踪

<script
    defer
    src="https://apm.noxussj.top/monitor.min.js"
    data-project-key="mk_your_project_key"
    data-auto-track="false">
</script>

关闭后仍会安装性能和错误监听,也可以继续调用 track()、captureError() 与其他公开方法。当前版本没有单独公开的手动页面访问 API,因此除非你只需要错误或业务事件,否则建议保持自动追踪。

自定义接口地址

当 SDK 发布在独立 CDN,而接口位于另一个域名时:

window.TraceVista.init({
    projectKey: 'mk_your_project_key',
    apiBase: 'https://monitor-api.example.com'
})

接口服务需要允许网站来源的跨域请求,并接受 Content-Type、X-API-Key 请求头。

多环境建议

为生产、预发布和测试环境分别添加监控网站和 API Key,避免测试流量污染生产指标。构建时通过环境变量选择 Key:

const TraceVistaKey = import.meta.env.VITE_TRACEVISTA_KEY

不要使用 API Key 区分登录用户;用户身份和网站环境是不同维度。

内容安全策略 CSP

如果网站启用了 CSP,至少需要允许:

script-src https://apm.noxussj.top
connect-src https://apm.noxussj.top

请将它们合并到网站现有策略中,而不是直接覆盖全部 CSP。