Jenkins 流水线失败分析器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/jenkins-pipeline-failure-analyzer 到 AI 助手。
技能介绍
当流水线变红时,问题往往不止一行日志
当 Jenkins 流水线从绿变红时,问题往往不止一行日志。开发者首先需要快速回答:这次失败是环境问题、代码问题还是基础设施问题?传统的排障流程需要在 Jenkins UI 中翻找控制台输出、定位失败的阶段、对比上一次成功构建的耗时差异,整个过程耗时且容易遗漏关键线索。
这套技能如何帮你定位问题
Jenkins 流水线失败分析器 通过调用 Jenkins 和 Blue Ocean 的 API 接口,将排障流程自动化:
- 拉取失败构建的详细日志:直接查询
/job/{name}/lastFailedBuild/api/json和/consoleText接口,获取失败构建的完整控制台输出,不必手动翻页或筛选。 - 解析 Blue Ocean 的阶段级数据:通过
/blue/rest/organizations接口获取流水线各阶段的执行时间和错误分类,快速识别是哪个环节出现了问题(例如编译、测试、部署)。 - 输出结构化诊断结果:将日志中的报错信息与阶段耗时结合,帮助开发者更直观地判断失败根因。
适用范围与注意事项
- 需要 API 访问权限:运行该技能的环境需具备 Jenkins REST API 的访问权限,且 Jenkins 实例需开启 Blue Ocean 相关接口。
- 适用于标准流水线:主要针对传统的 Jenkins 流水线;自定义脚本或插件引入的特殊错误日志可能需要进一步人工分析。
- 依赖 Jenkins 版本:接口字段可能因 Jenkins 版本差异而有所不同,使用前需确认实例版本与文档一致。
使用场景
- CI流水线凌晨执行失败后,需快速定位是编译阶段报错还是部署环境异常时
- 构建任务因阶段耗时过长被标记失败,需对比各阶段耗时找出卡顿环节时
- 发布流水线失败且控制台日志过长,需提取关键报错并按阶段分类时
- CI环境变更后流水线频繁失败,需通过阶段级错误分类判断是否为环境问题时
适合人员
- 负责CI流水线维护的DevOps工程师:需快速定位凌晨流水线失败的根因
- 编写Jenkinsfile的开发者:当流水线因阶段报错失败时,需判断是代码问题还是环境问题
- 负责发布流程的测试工程师:需在发布流水线失败后,快速区分是测试阶段未通过还是部署异常