mcpField
E
error-handling-expert

error-handling-expert

github.com/shipshitdev开发38174 次安装2 天前更新
代码仓库

关于 error-handling-expert

为开发者提供应用错误处理的实现与审查指导,涵盖响应格式、日志记录和恢复模式。内容涉及后端异常、React 错误边界及异步错误。

主要功能

  1. 01异常过滤器与错误响应
  2. 02日志和监控指导
  3. 03重试与熔断模式
  4. 04回退与恢复策略
  5. 05项目上下文检查

适用场景

  1. 01设计一致的 API 错误响应
  2. 02添加异常过滤器或 React 错误边界
  3. 03规划重试与优雅降级

安装

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

$npx skills add https://github.com/shipshitdev/skills --skill error-handling-expert

安装后在 Claude Code 中输入/error-handling-expert确认已加载。

附带文件plugin.jsonreferences/full-guide.md

详细介绍

错误处理专家技能

适用场景

  • 实现错误处理
  • 创建异常过滤器
  • 设计错误响应
  • 设置错误日志记录
  • 实现错误恢复
  • 处理异步错误
  • 创建错误边界
  • 实现重试逻辑

项目上下文发现

提供指导之前:

  1. 检查 .agents/memory/,了解项目架构和错误处理模式
  2. 查看现有异常过滤器
  3. 检查错误监控工具(Sentry、Rollbar)
  4. 查看日志记录库(Winston、Pino)

核心原则

错误类型

应用程序错误: 400、401、403、404、409、422
系统错误: 500、502、503、504

错误响应格式
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Validation failed",
    "details": [...],
    "timestamp": "2025-01-01T00:00:00Z",
    "path": "/api/users",
    "requestId": "req-123456"
  }
}

快速模式

NestJS 异常过滤器
@Catch()
export class AllExceptionsFilter implements ExceptionFilter {
  catch(exception: unknown, host: ArgumentsHost) {
    // Log, format, respond
  }
}
React 错误边界
class ErrorBoundary extends React.Component {
  componentDidCatch(error, errorInfo) {
    // Log to monitoring
  }
}
带退避的重试
async function retryWithBackoff<T>(fn, maxRetries = 3): Promise<T>

最佳实践

  • 使用对用户友好的消息,不包含敏感信息
  • 记录所有错误及其上下文
  • 集成错误监控工具(Sentry)
  • 实现重试逻辑和熔断器
  • 提供回退值
  • 测试错误场景

恢复策略

  1. 重试逻辑 - 指数退避
  2. 熔断器 - 防止故障级联
  3. 回退值 - 优雅降级

有关完整的异常过滤器实现、自定义异常、验证管道设置、错误边界、熔断器模式、日志集成以及数据库/API 错误处理模式,请参阅: references/full-guide.md

评论

支持 Markdown