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

如何通过AzureDevOps WebApi查询TaskAgent的当前状态?

如何通过Azure DevOps Web API查询代理的当前状态

可以通过Azure DevOps Web API查询Microsoft.TeamFoundation.DistributedTask.WebApi.TaskAgent的当前状态,具体方式如下:

  • 查询单个代理状态:使用TaskAgentHttpClientBase.GetAgentAsync方法,传入组织名称/ID、代理池ID、代理ID,返回的TaskAgent对象包含两类关键状态属性:

    • State(TaskAgentState枚举):代表代理的在线状态,可选值包括Online、Offline、Unavailable等;
    • UpdateState(AgentUpdateState枚举):对应你提到的更新操作相关状态,可选值包括Pending、InProgress、Completed等,与UpdateAgentUpdateStateAsync方法设置的状态对应。
  • 批量查询代理状态:使用TaskAgentHttpClientBase.GetAgentsAsync方法,传入组织名称/ID、代理池ID,可获取该池下所有代理的列表,遍历每个TaskAgent对象即可获取对应状态。

代码示例(C#)

// 建立连接
var connection = new VssConnection(new Uri("https://dev.azure.com/你的组织"), new VssBasicCredential(string.Empty, "你的个人访问令牌"));
var taskAgentClient = connection.GetClient<TaskAgentHttpClient>();

// 查询单个代理
int poolId = 123; // 替换为你的代理池ID
int agentId = 456; // 替换为你的代理ID
TaskAgent agent = await taskAgentClient.GetAgentAsync("你的组织", poolId, agentId);

// 获取状态
TaskAgentState onlineState = agent.State;
AgentUpdateState updateStatus = agent.UpdateState;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 15:32:12