GitHub Actions Queue Latency Audit

从 run/job JSON 审计 GitHub Actions 队列等待热点,使 CI 瓶颈在合并前可见。

安装

概览

GitHub Actions Queue Latency Audit 是一款专为量化分析 GitHub Actions 工作流队列等待时间而设计的工具。它通过解析从 `gh run view –json` 命令导出的运行 JSON 文件,精确计算每个作业(job)在队列中的等待时长(从创建到开始执行的时间差)以及实际运行时间,从而揭示 CI/CD 流水线中潜在的瓶颈所在。该工具的核心价值在于能够在代码合并前就识别出因资源争用或调度延迟导致的性能问题,帮助开发团队提前优化工作流程,提升整体构建效率。其输出结果既支持人类可读的文本报告,也支持机器可处理的 JSON 格式,便于集成到监控系统和自动化告警流程中。

核心功能特点

  1. 解析 GitHub Actions 运行 JSON 数据,精准计算作业队列等待时间和实际执行时长
  2. 按仓库、工作流名称和作业类型聚合统计,识别高频出现的排队热点
  3. 支持自定义阈值设置,对警告级和严重级排队延迟进行分级标记
  4. 提供文本与 JSON 两种输出模式,适配不同使用场景如控制台查看或系统集成
  5. 支持正则表达式过滤特定仓库、工作流或作业类型,实现精细化数据分析

适用场景

该工具特别适用于需要持续关注 CI/CD 性能表现的大型开源项目或企业级开发环境。当多个并行工作流同时提交导致 GitHub Actions 队列拥堵时,开发者往往难以察觉问题根源。通过定期运行此审计脚本,可以清晰定位哪些工作流或作业类型最常遭遇长时间排队,例如某些高负载的测试套件或构建任务。此外,结合 `FAIL_ON_CRITICAL=1` 参数,还能将严重排队情况转化为构建失败信号,强制触发修复机制。对于采用多仓库协作的团队而言,利用 `REPO_MATCH` 等过滤条件,可以快速聚焦于关键项目的性能分析,避免信息过载。无论是用于日常运维监控、容量规划还是故障排查,该工具都能为优化 GitHub Actions 调度策略提供可靠的数据支撑。