SuperAPI AI 工具集

ignoring-sentry-errors

通用与其它

查看项目

更新于 10-16 02:38

技能介绍

用途:在 OneKey monorepo 中为 Sentry 添加新的错误过滤规则,抑制不需要上报的错误。所有过滤逻辑集中在 packages/shared/src/modules3rdParty/sentry/basicOptions.ts。

主要能力:支持三种过滤策略。按错误类型过滤,加入 FILTERED_ERROR_TYPES Set,如 'AxiosError'、'HTTPClientError';按精确消息匹配,加入 FILTER_ERROR_VALUES 数组,如 'AbortError: AbortError'、'cancel timeout';按部分消息匹配,在 isFilterErrorAndSkipSentry 函数中通过 error.value.includes 判断,适合动态消息。

平台区分:使用 platformEnv 判断平台,包括 isDesktop(Electron 桌面)、isNative(React Native iOS/Android)、isWeb、isExtension、isWebEmbed。平台特定过滤建议分组检查,减少重复判断。

使用方式:先分析错误类型、消息、平台、频率与影响,再选择过滤策略并实现。修改后运行 yarn eslint packages/shared/src/modules3rdParty/sentry/basicOptions.ts --quiet 验证。

最佳实践:先检查较短字符串以提升 includes 链性能;分组平台检查;添加注释说明过滤原因;过滤后错误仍会通过 onError 回调本地记录;动态消息用多个 includes 组合避免误伤。

相关文件:主配置 apps/desktop/app/sentry.ts,桌面渲染进程 index.desktop.ts,Web/扩展 index.ts,原生 index.native.ts。

限制:资料未提供该技能的具体安装方式、版本要求或适用范围之外的说明。