You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Jenkins中指定任务的构建失败总次数?

Jenkins指定任务失败构建数量查询方案

方法1:调用原生API统计(无需额外插件)

Jenkins本身自带无依赖的REST API,无需安装插件即可使用,之前调用API失败大概率是未使用正确的字段过滤参数:

  • 接口地址格式:http://<你的Jenkins域名>/job/<目标任务名>/api/json?tree=builds[result]
  • 接口仅返回所有构建的结果字段,返回数据量极小,无需处理无关字段
  • 如果需要限定查询的构建范围,可追加范围参数,例如仅查询最近200条构建:http://<你的Jenkins域名>/job/<目标任务名>/api/json?tree=builds[result]{0,200}
  • 开启权限校验的Jenkins实例需要在请求头携带认证信息,推荐使用个人API Token替代密码进行认证

命令行一键统计示例(依赖curl和jq)

curl -u "你的Jenkins用户名:你的API Token" "http://<你的Jenkins域名>/job/<目标任务名>/api/json?tree=builds[result]" | jq '[.builds[] | select(.result == "FAILURE")] | length'

执行后直接输出失败构建的数量。

方法2:Jenkins脚本控制台直接查询(无需外部请求)

如果不想处理外部请求的认证、网络问题,可以直接在Jenkins内部执行Groovy脚本查询:

  • 操作路径:Jenkins首页 → 左侧菜单 Manage Jenkins → Script Console
  • 输入以下脚本替换任务名后执行即可:
// 替换为目标任务的完整名称
def targetJobName = "你的任务名"
def job = Jenkins.instance.getItemByFullName(targetJobName)
if (!job) {
    println "任务不存在,请确认任务名拼写及路径是否正确"
    return
}
// 统计所有失败构建
def failBuildCount = job.builds.count { it.result == Result.FAILURE }
// 若要统计最近30天的失败构建,替换为下面的统计逻辑
// def failBuildCount = job.builds.count { 
//     it.result == Result.FAILURE && it.timeInMillis > System.currentTimeMillis() - 30 * 86400 * 1000 
// }
println "任务「${targetJobName}」失败构建数量:${failBuildCount}"

内容的提问来源于stack exchange,提问作者Snowcrash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 15:15:05