使用currentBuild.rawBuild.getLog获取当前Jenkins构建的所有日志

时间:2017-12-05 11:48:13

标签: jenkins groovy

我希望我当前构建的所有jenkins日志都在groovy中

env.logs = currentBuild.rawBuild.getLog(1000).join('\n')

这样可行,但这里的问题是我必须指定行数。 当我使用时:

env.logs = currentBuild.rawBuild.getLog().join('\n')

env.logs为空。在没有指定行数的情况下获取所有日志的正确命令是什么。这可能吗?

currentBuild.rawBuild.log似乎有效,但是deprecated

2 个答案:

答案 0 :(得分:0)

您可以使用最大值为getLog(Integer.MAX_VALUE)

的getLog方法

答案 1 :(得分:0)

这对我有用 - 它读取实际的日志文件而不是使用 API:

logFileContent = new File("${JENKINS_HOME}/jobs/${JOB_NAME}/builds/${BUILD_NUMBER}/log").collect {it}