Skip to main content

概述

Claude Code 支持通过 Sentry 捕获运行时异常并上报到你自己指定的 Sentry 实例。
  • 配置了 SENTRY_DSN:自动初始化 Sentry SDK,捕获未处理异常和关键错误
  • 未配置:所有 Sentry 调用均为 no-op,零开销

环境变量

只需要这一个变量,设置后即启用。

使用方式

自托管 Sentry

Sentry Cloud (SaaS)

不使用 Sentry(默认行为)

Sentry 服务端配置

步骤

  1. 部署 Sentry 实例(Docker 自托管 或 使用 sentry.io Cloud)
  2. 创建 Project,选择 Node.js 平台
  3. 获取项目的 DSN(Settings → Projects → Client Keys → DSN)
  4. 将 DSN 设置为 SENTRY_DSN 环境变量

功能详情

错误捕获

  • 自动捕获SentryErrorBoundary 包裹关键 React 组件,捕获渲染错误
  • 手动上报errorLogSink 在写入错误日志时同步上报到 Sentry
  • 优雅关闭:进程退出时 closeSentry() 确保事件发送完毕(2s 超时)

安全过滤

beforeSend 钩子会自动剥离以下敏感 header:
  • authorization
  • x-api-key
  • cookie
  • set-cookie

忽略的错误类型

以下错误模式会被忽略,不会上报:

其他配置

  • 采样率sampleRate: 1.0(捕获全部错误事件)
  • 面包屑上限maxBreadcrumbs: 20(控制 payload 体积)
  • 性能事务:已关闭(beforeSendTransaction 返回 null),仅上报错误

API

实现文件