首页 > 解决方案 > 在 azure 管道输出中显示进度

问题描述

所以我将我的计算机设置为 azure-devops 中的代理池。我正在创建延迟测试,以便开发人员可以在他们的 CI 中使用它,脚本在 python 中运行并测试我为连接到云的公司设置的系统中的各个点,它主要用于提供信息的目的。当我运行脚本时,我必须等待一些时间,所以我连接的系统会通过其正常的网络周期检查本地网络中的所有设备,这对于问题不是很重要,但是当我等待时,我会显示在终端带有“...”的消息来自“。” 到“..”到“...”,只是为了表明脚本没有崩溃或任何事情。

python代码看起来像这样,当我在本地运行它时工作得很好:

sys.stdout.write("\rprocessing queue, timing varies depending on priority" + ("."*( i % 3 + 1))+ "\r")    
sys.stdout.flush()

但是,天蓝色管道中显示的输出显示了所有行而不替换它们。有没有办法做我想做的事?

标签: azureazure-devopsazure-pipelinesagent

解决方案


恐怕天蓝色管道不支持显示进度。Azure 管道日志控制台不是用户交互的。它只是捕获代理机器终端输出。

您可能必须使用更简单的方法来指示脚本现在正在执行且尚未完成。举个简单的例子:

sys.stdout.write("Waiting for processing queue ..." )

您可以将此问题报告给微软开发团队。希望他们在未来的 sprint 中找到解决此问题的方法。


推荐阅读