用途:构建不会拖垮应用的 Sentry 集成,所有模式都优先保证应用可用性,而非遥测完整性。
主要能力:一是安全初始化与优雅降级,用 try/catch 包裹 Sentry.init(),记录初始化状态;用 Sentry.getClient() 确认客户端创建;本地日志作为基线;beforeSend 回调加嵌套 try/catch。二是熔断器,连续失败达阈值后打开,冷却后半开探测;默认 5 次失败触发、60 秒冷却;打开状态跳过 Sentry 调用并写回退日志;提供 getStatus() 供健康检查。三是离线队列、自定义传输与优雅关闭:有界文件队列最多 1000 条、满则淘汰最旧;启动与恢复连接时排空;SIGTERM/SIGINT 处理器在退出前调用 Sentry.close(2000);自定义传输支持指数退避重试;关键错误可用 Promise.allSettled 双写多个目的地。
前提:@sentry/node v8+(TypeScript)或 sentry-sdk v2+(Python);有效的 Sentry DSN;确定回退日志目的地(控制台、文件或外部日志器);了解应用关闭生命周期。
输出:捕获 SDK 失败的安全初始化包装、自动回退本地日志的 captureError()、自动恢复的熔断器、暴露状态的健康检查端点、离线队列、信号处理器与重试传输。
限制:资料未提供具体定价、平台覆盖范围或性能基准。