mcpField
S
sf-debug

sf-debug

github.com/jaganpro开发4241.5k 次安装26 周前更新
代码仓库

关于 sf-debug

sf-debug 是面向 Salesforce 开发者的技能,用于分析调试日志并追查故障根因。它按异常、治理限制、查询和资源压力组织分析,并给出修复建议与验证步骤。

主要功能

  1. 01Salesforce 日志获取指引
  2. 02堆栈跟踪与异常分析
  3. 03治理限制诊断
  4. 04SOQL、DML、CPU 和堆分析
  5. 05严重性分类与修复建议

适用场景

  1. 01查找 Salesforce 事务失败原因
  2. 02调查慢查询或重复 SOQL、DML
  3. 03根据日志诊断 CPU 或堆压力

安装

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

$npx skills add https://github.com/jaganpro/sf-skills --skill sf-debug

安装后在 Claude Code 中输入/sf-debug确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

CREDITS.md
README.md
assets/
benchmarking-template.cls
cpu-heap-optimization.cls
dml-in-loop-fix.cls
null-pointer-fix.cls
soql-in-loop-fix.cls
references/
analysis-playbook.md
benchmarking-guide.md
cli-commands.md
common-issues.md
debug-log-reference.md
log-analysis-tools.md
scoring-rubric.md

详细介绍

sf-debug:Salesforce 调试日志分析与故障排查

当用户需要根据调试日志进行根因分析时,使用此技能:诊断管理器限制、解读堆栈跟踪、调查慢查询、分析堆内存 / CPU 压力,或根据日志证据进行从复现到修复的循环。

此技能适用的任务

遇到以下情况时,使用 sf-debug:

  • Salesforce 的 .log 文件
  • 堆栈跟踪和异常分析
  • 管理器限制
  • SOQL / DML / CPU / 堆内存故障排查
  • 从日志中提取的查询计划或性能证据

以下情况应委派给其他技能:


首先收集所需上下文

询问或推断:

  • 组织别名
  • 失败的事务 / 用户流程 / 测试名称
  • 大致的时间戳或事务时间范围
  • 已知的用户 / 记录 / 请求 ID
  • 目标是仅进行诊断,还是进行诊断并完成修复循环

建议的工作流

1. 获取日志
sf apex list log --target-org <alias> --json
sf apex get log --log-id <id> --target-org <alias>
sf apex tail log --target-org <alias> --color
2. 按以下顺序分析
  1. 入口点和事务类型
  2. 异常 / 致命错误
  3. 管理器限制
  4. 重复的 SOQL / DML 模式
  5. CPU / 堆内存热点
  6. 调用时间和外部故障
3. 判定严重程度
  • 严重 — 运行时失败、触及硬性限制、存在数据损坏风险
  • 警告 — 接近限制、查询非选择性、执行路径缓慢
  • 信息 — 优化机会或代码卫生问题
4. 建议最小且正确的修复方案

优先选择符合以下条件的修复方案:

  • 针对根因
  • 支持批量处理
  • 可测试
  • 易于通过重新运行验证

扩展工作流:references/analysis-playbook.md


高信号问题模式

问题主要信号默认修复方向
循环中的 SOQL重复调用路径中反复出现 SOQL_EXECUTE_BEGIN只查询一次,使用映射 / 分组集合
循环中的 DML重复出现 DML_BEGIN 模式收集记录,一次性执行批量 DML
查询非选择性扫描行数过多 / 选择性差添加索引筛选条件,缩小范围
CPU 压力CPU 用量接近同步限制降低算法复杂度、缓存,或在适用时改为异步处理
堆内存压力堆内存用量接近同步限制使用 SOQL for 循环进行流式处理,减少内存中的数据
空指针 / 致命错误出现 EXCEPTION_THROWN / FATAL_ERROR为可能为空的情况添加保护,修复空查询处理逻辑

扩展示例:references/common-issues.md


输出格式

完成分析时,按以下顺序报告:

  1. 失败内容
  2. 失败位置(类 / 方法 / 行 / 事务阶段)
  3. 失败原因(根因,而不只是症状)
  4. 严重程度
  5. 建议的修复方案
  6. 验证步骤

建议格式:

Issue: <summary>
Location: <class / line / transaction>
Root cause: <explanation>
Severity: Critical | Warning | Info
Fix: <specific action>
Verify: <test or rerun step>

跨技能协作

需求委派给原因
实现 Apex 修复sf-apex生成 / 审查代码变更
通过测试复现sf-testing测试执行和覆盖率循环
部署修复sf-deploy部署编排
创建调试数据sf-data定向种子数据 / 复现数据

参考索引

从这里开始
深入参考
评分标准

评分指南

分数含义
90+专业分析,并提供明确的修复指导
80–89分析良好,但有少量遗漏
70–79可以接受,但可能遗漏次要问题
60–69仅完成部分诊断
< 60分析不完整

评论

支持 Markdown