SuperAPI AI 工具集

buildkite-logs

通用与其它

查看项目

更新于 10-15 21:37

技能介绍

用途:面向 elastic/kibana 仓库,通过 Buildkite API 获取并分析 CI 构建与任务日志,帮助定位失败构建、查看任务定义和下载产物。

主要能力:按构建号直接获取构建详情;按 PR 号获取最新构建,或用 state 过滤只取失败构建;获取指定任务日志;列出并下载构建或单个任务的产物;结合 .buildkite/pipelines/pull_request/base.yml 等文件理解 PR 构建的任务定义。

使用方式:所有请求需设置 BUILDKITE_API_TOKEN,令牌可在 https://buildkite.com/user/api-access-tokens 创建,scope 为 read_builds、read_artifacts;触发重试需读写令牌。基础地址为 https://api.buildkite.com/v2,组织为 elastic,默认流水线为 kibana-pull-request。若用户提供 Buildkite URL,应优先从 URL 提取构建号直接获取,不要回退到按 PR 取最新构建。常用命令示例:curl -sf -H "$BK_AUTH" "$BASE/organizations/$ORG/pipelines/$PIPELINE/builds/$BUILD_NUMBER";按 PR 取最新构建:...builds?pull_request_id=$PR&per_page=1;取失败构建:...builds?pull_request_id=$PR&state[]=failed&state[]=failing&per_page=1;取任务日志:...builds/$BUILD_NUMBER/jobs/$JOB_ID/log。日志可能很大,可用 tail -n 200 或 grep/rg 搜索 error、FAIL、AssertionError、TypeError 等关键词。

适用场景:诊断失败构建(先取构建概览,筛选 state 为 failed 的任务,再取日志并汇总任务名、退出码和关键错误行);理解 PR 构建的任务定义;列出或下载产物。

限制:需要有效 API 令牌,缺失时需用户自行导出;令牌权限决定可执行操作,重试需读写权限;日志体积大时需截取或过滤;其他流水线需替换 PIPELINE 变量,常见 slug 有 kibana-pull-request、kibana-on-merge、kibana-flaky-test-suite-runner。