如何无需逐个调用API查询Azure DevOps代理池内代理的忙闲状态?
高效统计Azure DevOps代理池忙闲状态的方法
你可以通过在原代理池API请求中添加includeAssignedRequest=true参数,一次性获取所有代理的忙闲状态,无需逐个调用单代理API:
https://dev.azure.com/{organization}/_apis/distributedtask/pools/{poolId}/agents?api-version=7.0&includeAssignedRequest=true
添加该参数后,返回的每个代理对象会包含assignedRequest字段:
- 若
assignedRequest不为null,说明该代理正处于忙碌状态(正在执行任务) - 若
assignedRequest为null,则代理处于空闲状态
这样你只需要发起一次API请求,就能遍历返回的代理列表,统计忙碌和空闲的数量,大幅提升效率,完美适配1000个代理的场景。
如果需要更精细的统计(比如仅统计在线代理的忙闲情况),可以结合代理对象的status字段(取值为online/offline等)来过滤,确保统计结果的准确性。
内容的提问来源于stack exchange,提问作者Lumberjack
相关产品推荐
相关产品推荐

