如何查看Azure DevOps Agent的旧作业日志?突破50条显示限制
Azure DevOps自托管代理作业与旧日志查看方案
一、查看自托管代理10天前的作业
Web界面实现方式
- 进入Azure DevOps组织的代理池页面,选中目标自托管代理所在的池,点击具体代理进入详情页
- 在代理详情页的作业标签下,点击页面顶部的筛选按钮,设置时间范围为“过去10天”或自定义起始/结束日期
- 若作业数量超过50条,点击页面底部的加载更多按钮,重复操作直到加载出目标时间范围内的所有作业
其他替代方式
如果Web界面加载受限,可使用以下两种方法:
- Azure DevOps CLI
- 用
az pipelines runs list命令指定代理池、代理名称和时间范围,示例:az pipelines runs list --pool-id <代理池ID> --agent-name <代理名称> --start-time "YYYY-MM-DD" --end-time "YYYY-MM-DD" --org <组织URL> --project <项目名称> - 导出为JSON格式便于后续分析:
az pipelines runs list --pool-id <代理池ID> --agent-name <代理名称> --start-time "YYYY-MM-DD" --end-time "YYYY-MM-DD" --org <组织URL> --project <项目名称> > agent-jobs.json
- 用
- Azure DevOps REST API
- 调用
Jobs - List接口,指定minTime和maxTime参数,示例请求:GET https://dev.azure.com/{organization}/{project}/_apis/distributedtask/pools/{poolId}/agents/{agentId}/jobs?minTime=YYYY-MM-DDTHH:MM:SSZ&maxTime=YYYY-MM-DDTHH:MM:SSZ&api-version=7.1-preview.1 - 接口返回指定时间范围内的所有作业记录,可通过工具发起请求并导出结果
- 调用
二、查看特定代理的旧作业日志
Web界面操作
- 通过上述方法找到目标作业记录,点击作业名称进入详情页
- 在日志标签下查看完整作业日志;日志较长时,点击下载日志按钮保存为本地文件,方便审计和性能分析
批量获取日志(CLI/API方式)
若需批量获取多个旧作业日志,可结合以下方式:
- CLI方式
- 先通过
az pipelines runs list获取目标作业ID列表,再逐个调用az pipelines runs logs download下载日志:az pipelines runs logs download --run-id <作业ID> --org <组织URL> --project <项目名称> --output-directory ./agent-logs
- 先通过
- API方式
- 调用
Logs - Get Run Log接口直接获取完整日志:GET https://dev.azure.com/{organization}/{project}/_apis/build/builds/{buildId}/logs?api-version=7.1-preview.2
- 调用
内容的提问来源于stack exchange,提问作者John Beckman
相关产品推荐
相关产品推荐

