mcpField
1
1k-sentry-analysis

1k-sentry-analysis

github.com/onekeyhq开发2.5k55 次安装今天更新
代码仓库

关于 1k-sentry-analysis

用于处理 Sentry 生产错误报告的分析与修复技能,面向排查崩溃和卡顿的开发者。它要求先记录证据充分的根因分析,并在用户确认后再修改代码。

主要功能

  1. 01分析 Sentry 错误日志
  2. 02用六类证据追查根因
  3. 03修改前生成缺陷分析日志
  4. 04等待用户确认后再修复

适用场景

  1. 01调查 iOS AppHang 和 Android ANR
  2. 02依据堆栈与用户操作排查崩溃
  3. 03为生产错误编写分析报告
  4. 04验证错误修复是否有效

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/onekeyhq/app-monorepo --skill 1k-sentry-analysis

安装后在 Claude Code 中输入/1k-sentry-analysis确认已加载。

附带文件references/rules/fix-sentry-errors.md

详细介绍

Sentry 错误分析与修复

从 Sentry 崩溃报告中分析并修复生产环境错误的完整工作流。

工作流概览

1. Obtain Sentry JSON log
   ↓
2. Analyze error
   ↓
3. Identify root cause
   ↓
4. Generate bug analysis log
   ↓
🚨 WAIT FOR USER CONFIRMATION 🚨
   ↓
5. Implement fix (only after approval)
   ↓
6. Test & verify
   ↓
7. Create PR

关键要求

必须遵守以下规则:

  1. ✅ 实施修复前,务必在 node_modules/.cache/bugs/ 中创建错误分析日志
  2. 🚨 开始任何代码更改前,必须等待用户确认
  3. ✅ 错误分析必须完整,所有部分都要填写
  4. ✅ 采用基于证据的方法(环环相扣,逐步递进)

快速参考

常见错误类型
类型描述常见原因
AppHangiOS 应用冻结超过 5 秒并发请求过多、主线程阻塞
ANRAndroid 无响应主线程执行繁重操作、死锁
Crash应用终止空指针、内存问题、未处理的异常
Exception已处理的错误网络故障、验证错误、状态问题
分析方法

使用 6 种证据来确定因果关系:

  1. 堆栈跟踪证据 - 代码中的错误位置
  2. Breadcrumbs 证据 - 导致错误的用户操作
  3. 代码逻辑证据 - 代码导致问题的原因
  4. 时间证据 - 问题发生的时间和频率
  5. 设备/平台证据 - 受影响的平台/设备
  6. 修复验证 - 测试确认修复有效
常见修复模式
// Pattern 1: Concurrent request control
async function executeBatched<T>(
  tasks: Array<() => Promise<T>>,
  concurrency = 3,
): Promise<Array<PromiseSettledResult<T>>> {
  const results: Array<PromiseSettledResult<T>> = [];
  for (let i = 0; i < tasks.length; i += concurrency) {
    const batch = tasks.slice(i, i + concurrency);
    const batchResults = await Promise.allSettled(
      batch.map((task) => task()),
    );
    results.push(...batchResults);
  }
  return results;
}

// Pattern 2: Main thread offloading (React Native)
import { InteractionManager } from 'react-native';

InteractionManager.runAfterInteractions(() => {
  // Heavy operation here
});

// Pattern 3: Error boundary
<ErrorBoundary fallback={<ErrorFallback />}>
  <Component />
</ErrorBoundary>

详细指南

如需全面了解 Sentry 错误分析工作流,请参阅 fix-sentry-errors.md。

涵盖主题:

  • 获取 Sentry JSON 日志
  • 基于 Python 的快速分析
  • 错误分析日志模板
  • 6 种证据方法
  • 根本原因识别
  • 常见修复模式(AppHang、ANR、崩溃)
  • 真实案例研究
  • 测试与验证
  • PR 创建工作流

关键文件

用途位置
错误分析日志node_modules/.cache/bugs/
Sentry 配置packages/shared/src/modules/sentry/
错误边界packages/kit/src/components/ErrorBoundary/

何时使用此技能

  • 分析 iOS AppHang 错误(冻结 5 秒以上)
  • 修复 Android ANR(应用无响应)
  • 调查带有堆栈跟踪的崩溃报告
  • 了解崩溃前的用户操作(breadcrumbs)
  • 创建基于证据的错误分析报告
  • 实施生产环境错误修复

相关技能

  • /1k-performance - 性能优化模式
  • /1k-error-handling - 错误处理最佳实践
  • /1k-sentry - Sentry 配置与过滤
  • /1k-code-quality - Lint 修复与代码质量

评论

支持 Markdown