运营和监控
监控策略
前端监控:
- Core Web Vitals: 监控LCP, FID, CLS等关键性能指标
- 错误跟踪: 捕获JavaScript运行时错误和API调用失败
- 用户行为: 跟踪关键用户交互和转化漏斗
- 性能指标: 页面加载时间,API响应时间监控
后端监控:
- 应用性能: 请求率、错误率、响应时间(p95)
- 数据库性能: 查询执行时间、连接池使用率
- 基础设施: CPU、内存、磁盘使用率监控
- 业务指标: 用户活跃度、API调用统计
日志管理
- 结构化日志: JSON格式日志,包含请求ID、用户ID等上下文
- 日志级别: DEBUG, INFO, WARN, ERROR分级管理
- 日志聚合: 集中式日志收集和分析
- 审计日志: 所有安全敏感操作记录详细审计日志
告警策略
- 关键告警: 应用不可用、数据库连接失败、5xx错误率 > 1%
- 警告告警: 响应时间 > 500ms, 4xx错误率 > 5%
- 信息告警: 资源使用率 > 80%, 备份任务完成
错误处理策略
统一错误格式
interface ApiError {
error: {
code: string; // 错误代码,如: 'VALIDATION_ERROR'
message: string; // 用户友好的错误信息
details?: Record<string, any>; // 详细错误信息
timestamp: string; // ISO时间戳
requestId: string; // 请求追踪ID
};
}
错误分类和处理
- 验证错误(400): 输入数据验证失败
- 认证错误(401): 未认证或token过期
- 权限错误(403): 权限不足
- 资源不存在(404): 请求的资源不存在
- 服务器错误(500): 内部服务器错误
- 服务不可用(503): 维护或过载
前端错误处理
- API错误: 统一错误处理中间件,用户友好提示
- 网络错误: 重试机制和离线状态处理
- 组件错误: React Error Boundary捕获渲染错误
- 用户输入错误: 实时验证和提示
后端错误处理
- 全局错误处理: 统一错误处理中间件
- 数据库错误: 连接池管理和重试机制
- 外部服务错误: 熔断器和降级处理
- 日志记录: 所有错误记录详细上下文信息
性能监控指标
- 应用性能指标: 请求响应时间(p50, p95, p99)、错误率、吞吐量
- 数据库性能: 查询执行时间、连接池使用率、锁等待时间
- 缓存性能: Redis命中率、内存使用率、响应时间
- 基础设施: CPU使用率、内存使用率、磁盘IO、网络带宽
业务监控指标
- 用户活跃度: 日活用户(DAU)、月活用户(MAU)、用户留存率
- API使用统计: 各端点调用频率、成功率、平均响应时间
- 功能使用: 关键功能使用率、用户行为漏斗分析
- 业务健康度: 订单成功率、支付成功率、用户满意度