Dav*_*ers 7 tfs agent alm tfs-2015 azure-devops
我正在使用TFS执行每晚构建,其中包括使用TFS测试代理的几个步骤.我正在运行最新版本的TFS /测试代理(2015年 - 更新3),目前还没有其他版本正在运行.通常(可能是一半时间),当夜间作业运行时,"Visual Studio测试代理部署"步骤失败,并显示以下错误:
该作业已被放弃,因为代理程序Agent-XXX未更新锁定.确保代理正在运行,而不是休眠,并且没有丢失与服务的通信.
这是由于测试代理的日志文件(在_diag下)中发现的错误:
此代理的会话已存在.下次重试前睡30秒.
Microsoft.TeamFoundation.DistributedTask.WebApi.TaskAgentSessionConflictException:任务代理Agent-XXX已拥有所有者XXX的活动会话.
我发现此问题的解决方案是重新启动运行测试代理的服务器,这会清除所有死会话,并且在服务器启动备份后,测试运行正常.我认为这实际上是在前面提到的帖子中所做的.重置配置的结果是重新启动服务.
虽然在链接文章中作为解决方案呈现,但它只是暂时的.即使服务器重新启动并且构建成功运行,第二天问题也会再次出现,需要手动干预才能使构建运行.
我可以安排一项任务来重置服务,甚至可以在每晚构建运行之前直接重启服务器,但它让我感觉像是绷带而不是修复.有没有人以前经历过这个问题,如果有的话,有没有办法防止它首先出现?
我只是设置了一个在我的主要测试运行前5分钟运行的构建,它运行Bat脚本以重新启动托管我的测试代理的所有服务器.这是一种解决方法,但似乎解决了这个问题.希望有一天有人可以提出比这更好的解决方案,但是现在,我必须在TFS中运行自动化测试.
我现在有三台服务器,这三台服务器都出现了同样的问题,但很难准确确定它何时发生.在不产生停机时间的情况下扩展变通方法,这证明是非常具有挑战性的.
更好的一天来了,我将TFS升级到2018,并将构建代理升级到最新版本,此问题不再发生,我认为它是旧构建代理中的一个错误.我仍然没有原始版本的构建代理的解决方案...
小智 0
听起来好像有一个进程 Agent.Listener.exe 正在计算机上的某个位置运行,可能作为服务(而不是登录的用户会话)运行。
请注意,如果代理进程在有活动会话时突然终止,则该会话最终将超时(我认为是 5 分钟后)。并且在启动时,如果代理遇到会话冲突,那么我认为在放弃之前它将重试长达 5.5 分钟(足够的时间让突然终止的会话过期)。
我将继续关闭它并假设某个进程正在某处运行。我们在这方面没有遇到任何问题,也没有听到任何其他报告,所以我认为代理没有问题。如果您找到复制品,或者看起来我错了,请重新打开。
归档时间: |
|
查看次数: |
1891 次 |
最近记录: |