[{"data":1,"prerenderedAt":422},["ShallowReactive",2],{"navigation-zh-CN":3,"doc-zh-CN-/features/errors":81,"surround-zh-CN-/features/errors":417},[4,23,45,67],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":22},"开始使用","i-lucide-rocket","/getting-started","1.getting-started",[10,14,18],{"title":11,"path":12,"stem":13},"认识 TraceVista","/getting-started/introduction","1.getting-started/1.introduction",{"title":15,"path":16,"stem":17},"5 分钟快速接入","/getting-started/quick-start","1.getting-started/2.quick-start",{"title":19,"path":20,"stem":21},"核心概念","/getting-started/concepts","1.getting-started/3.concepts",false,{"title":24,"icon":25,"path":26,"stem":27,"children":28,"page":22},"产品能力","i-lucide-blocks","/features","2.features",[29,33,37,41],{"title":30,"path":31,"stem":32},"功能总览","/features/overview","2.features/1.overview",{"title":34,"path":35,"stem":36},"性能指标与优化","/features/performance","2.features/2.performance",{"title":38,"path":39,"stem":40},"前端错误监控","/features/errors","2.features/3.errors",{"title":42,"path":43,"stem":44},"访问分析与业务事件","/features/analytics","2.features/4.analytics",{"title":46,"icon":47,"path":48,"stem":49,"children":50,"page":22},"SDK 接入","i-lucide-code-xml","/sdk","3.sdk",[51,55,59,63],{"title":52,"path":53,"stem":54},"安装浏览器 SDK","/sdk/installation","3.sdk/1.installation",{"title":56,"path":57,"stem":58},"SDK 配置","/sdk/configuration","3.sdk/2.configuration",{"title":60,"path":61,"stem":62},"SDK API 参考","/sdk/api","3.sdk/3.api",{"title":64,"path":65,"stem":66},"隐私、安全与采集边界","/sdk/privacy","3.sdk/4.privacy",{"title":68,"icon":69,"path":70,"stem":71,"children":72,"page":22},"网站与额度","i-lucide-folder-cog","/account","4.account",[73,77],{"title":74,"path":75,"stem":76},"管理监控网站","/account/projects","4.account/1.projects",{"title":78,"path":79,"stem":80},"免费接收量与用量规则","/account/quota","4.account/2.quota",{"id":82,"title":38,"body":83,"description":410,"extension":411,"links":412,"meta":413,"navigation":414,"path":39,"seo":415,"stem":40,"__hash__":416},"docs_zh_cn/2.features/3.errors.md",{"type":84,"value":85,"toc":403},"minimal",[86,90,94,174,177,180,183,206,209,212,215,358,361,364,378,381,399],[87,88,89],"p",{},"前端错误发生在用户浏览器中，服务端日志不一定能看到。TraceVista SDK 从全局异常、资源加载和请求链路捕获常见失败，并附带足够的页面上下文帮助复现。",[91,92,93],"h2",{"id":93},"自动捕获范围",[95,96,97,113],"table",{},[98,99,100],"thead",{},[101,102,103,107,110],"tr",{},[104,105,106],"th",{},"类型",[104,108,109],{},"触发来源",[104,111,112],{},"典型例子",[114,115,116,133,148,161],"tbody",{},[101,117,118,125,130],{},[119,120,121],"td",{},[122,123,124],"code",{},"js_error",[119,126,127],{},[122,128,129],{},"window.error",[119,131,132],{},"空对象取值、未定义函数、运行时异常",[101,134,135,140,145],{},[119,136,137],{},[122,138,139],{},"promise_error",[119,141,142],{},[122,143,144],{},"unhandledrejection",[119,146,147],{},"异步请求或 Promise 链未处理拒绝",[101,149,150,155,158],{},[119,151,152],{},[122,153,154],{},"resource_error",[119,156,157],{},"捕获阶段的资源错误",[119,159,160],{},"Script、CSS、图片加载失败",[101,162,163,168,171],{},[119,164,165],{},[122,166,167],{},"api_error",[119,169,170],{},"包装 Fetch / XMLHttpRequest",[119,172,173],{},"网络失败、HTTP 4xx/5xx",[87,175,176],{},"SDK 自己的上报请求会被排除，避免监控失败形成递归错误。",[91,178,179],{"id":179},"错误上下文",[87,181,182],{},"错误记录可能包含：",[184,185,186,190,193,196,199],"ul",{},[187,188,189],"li",{},"错误名称、消息和堆栈",[187,191,192],{},"当前 URL、路径、访客、会话和页面访问标识",[187,194,195],{},"资源 URL、接口状态码与请求耗时",[187,197,198],{},"最近最多 20 条导航和点击面包屑",[187,200,201,202,205],{},"调用 ",[122,203,204],{},"captureError()"," 时提供的附加信息",[87,207,208],{},"点击面包屑只记录元素标签、ID 和最多两个 class，不记录输入内容和页面正文。",[91,210,211],{"id":211},"主动捕获业务异常",[87,213,214],{},"被业务代码处理过的异常不会再触发全局未处理事件，可以主动上报：",[216,217,222],"pre",{"className":218,"code":219,"language":220,"meta":221,"style":221},"language-js shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","try {\n    await submitOrder()\n} catch (error) {\n    await window.TraceVista.captureError(error, {\n        module: 'checkout',\n        action: 'submit_order'\n    })\n    showFriendlyMessage()\n}\n","js","",[122,223,224,237,251,267,297,319,335,344,352],{"__ignoreMap":221},[225,226,229,233],"span",{"class":227,"line":228},"line",1,[225,230,232],{"class":231},"s8pZq","try",[225,234,236],{"class":235},"s86vT"," {\n",[225,238,240,243,247],{"class":227,"line":239},2,[225,241,242],{"class":231},"    await",[225,244,246],{"class":245},"swgpB"," submitOrder",[225,248,250],{"class":249},"sd2Uz","()\n",[225,252,254,257,260,264],{"class":227,"line":253},3,[225,255,256],{"class":235},"}",[225,258,259],{"class":231}," catch",[225,261,263],{"class":262},"sndM8"," (error) ",[225,265,266],{"class":235},"{\n",[225,268,270,272,275,278,281,283,286,289,292,295],{"class":227,"line":269},4,[225,271,242],{"class":231},[225,273,274],{"class":262}," window",[225,276,277],{"class":235},".",[225,279,280],{"class":262},"TraceVista",[225,282,277],{"class":235},[225,284,285],{"class":245},"captureError",[225,287,288],{"class":249},"(",[225,290,291],{"class":262},"error",[225,293,294],{"class":235},",",[225,296,236],{"class":235},[225,298,300,303,306,309,313,316],{"class":227,"line":299},5,[225,301,302],{"class":249},"        module",[225,304,305],{"class":235},":",[225,307,308],{"class":235}," '",[225,310,312],{"class":311},"sIEYB","checkout",[225,314,315],{"class":235},"'",[225,317,318],{"class":235},",\n",[225,320,322,325,327,329,332],{"class":227,"line":321},6,[225,323,324],{"class":249},"        action",[225,326,305],{"class":235},[225,328,308],{"class":235},[225,330,331],{"class":311},"submit_order",[225,333,334],{"class":235},"'\n",[225,336,338,341],{"class":227,"line":337},7,[225,339,340],{"class":235},"    }",[225,342,343],{"class":249},")\n",[225,345,347,350],{"class":227,"line":346},8,[225,348,349],{"class":245},"    showFriendlyMessage",[225,351,250],{"class":249},[225,353,355],{"class":227,"line":354},9,[225,356,357],{"class":235},"}\n",[87,359,360],{},"附加信息应该用于定位模块、操作和非敏感状态，不要放入密码、Token、身份证件或完整表单内容。",[91,362,363],{"id":363},"降噪机制",[184,365,366,369,372,375],{},[187,367,368],{},"同类型、同消息、同一堆栈片段的错误在 3 秒内重复出现时会被抑制。",[187,370,371],{},"单个页面客户端每分钟最多发起 60 次监控上报。",[187,373,374],{},"额度接口返回 429 后，当前客户端停止继续上报，避免反复请求。",[187,376,377],{},"自定义数据会限制深度、字段数和字符串长度，循环引用会被安全处理。",[91,379,380],{"id":380},"定位建议",[382,383,384,387,390,393,396],"ol",{},[187,385,386],{},"先按错误类型和消息聚合，找影响次数和页面范围最大的错误。",[187,388,389],{},"通过堆栈定位源代码；生产环境应妥善保留对应构建产物与 Source Map。",[187,391,392],{},"检查浏览器、设备和页面是否集中在特定环境。",[187,394,395],{},"结合面包屑和接口错误判断用户在异常前执行了什么操作。",[187,397,398],{},"修复后继续观察错误趋势，避免只以“本地无法复现”作为结束条件。",[400,401,402],"style",{},"html pre.shiki code .s8pZq, html code.shiki .s8pZq{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s86vT, html code.shiki .s86vT{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swgpB, html code.shiki .swgpB{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sd2Uz, html code.shiki .sd2Uz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sndM8, html code.shiki .sndM8{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sIEYB, html code.shiki .sIEYB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":221,"searchDepth":253,"depth":239,"links":404},[405,406,407,408,409],{"id":93,"depth":239,"text":93},{"id":179,"depth":239,"text":179},{"id":211,"depth":239,"text":211},{"id":363,"depth":239,"text":363},{"id":380,"depth":239,"text":380},"了解自动捕获的错误类型、上下文、去重和限流机制，以及如何主动报告业务异常。","md",null,{},true,{"title":38,"description":410},"ErI4GLcPyt",[418,420],{"title":34,"path":35,"stem":36,"description":419,"children":-1},"理解 LCP、INP、CLS、FCP、TTFB、TBT、DCL 和 Load 的作用、参考区间与常见优化方向。",{"title":42,"path":43,"stem":44,"description":421,"children":-1},"理解 PV、UV、会话、来源、环境分析和自定义事件，以及如何建立清晰的事件命名规范。",1789572469083]