2016-04-29 118 views
6

我在Jenkins中写了一个管道作业,它显示了管道控制台输出中下游作业的输出控制台。这项工作目前还在进行中,但由于管道作业本身将所有回波线添加到输出中,所以输出结果很难读取。如何在jenkins管道控制台输出中抑制源脚本行回声?

Started by user [email protected] 
[Pipeline] Allocate node : Start 
Running on swqa-pr-prod-slave-1 in /srv/jenkins-slave/workspace/UUT Automated Regression - 1.20 
[Pipeline] node { 
[Pipeline] echo 

[Pipeline] echo 
///////////////////////////////////////////////// 
[Pipeline] echo 
       Start Execution     
[Pipeline] echo 
///////////////////////////////////////////////// 
[Pipeline] echo 

[Pipeline] echo 

[Pipeline] [monitor] echo 
[monitor] [EnvInject] - Loading node environment variables. 
[Pipeline] [monitor] echo 
[monitor] Building remotely on swqa-pr-prod-slave-1 (pr-prod-linux-slaves) in workspace /srv/jenkins-slave/workspace/Process Map Components Lock Down - 1.00 
[Pipeline] [monitor] echo 
[monitor] [EnvInject] - Injecting environment variables from a build step. 
[Pipeline] [monitor] echo 
[monitor] [EnvInject] - Injecting as environment variables the properties content 
[Pipeline] [monitor] echo 
[monitor] componentsLockDownScript=RegressionComponentsLockDown.py 
[Pipeline] [monitor] echo 
[monitor] modifyProcessMapXmlScript=ModifyXmlDom-1.20.py 
[Pipeline] [monitor] echo 
[monitor] uutAndNodePropertiesFile=DL380G8PR2-NodeData-(203).properties 
[Pipeline] [monitor] echo 
[monitor] 
[Pipeline] [monitor] echo 
[monitor] [EnvInject] - Variables injected successfully. 

是否有一个选项,配置,命令或任何在流水线插件或在Groovy或詹金斯让我抑制所有额外的“呼应”,使控制台输出可读性更强?

回答

0

你需要通过jenkins来做到吗?如果没有,你可以从控制台直接用grep显示它(假设你在Linux控制台上的输出):

cat YOUR_EXAMPLE_OUTPUT.txt | grep -v '\[Pipeline\]\|\[monitor\]\|^$' 

,将只留下了:

Started by user [email protected] 
Running on swqa-pr-prod-slave-1 in /srv/jenkins-slave/workspace/UUT Automated Regression - 1.20 

///////////////////////////////////////////////// 
       Start Execution     
///////////////////////////////////////////////// 

UPDATE: 如果你想要它“活”按照你的输出和管道它变成一个行缓冲的grep:

tail -f YOUR_EXAMPLE_OUTPUT.txt | grep -v '\[Pipeline\]\|\[monitor\]\|^$' --line-buffered 
+0

是的,我想要的是在生成输出控制台时消除多余的行,我不想等到作业完成后才处理/清除输出。 –

0

你真的找什么是JENKINS-26124。显然你有这样的解决方法,但是它的实现有一个缺陷,我们在这个问题中看不到。

相关问题